发布于2021-05-29 20:40 阅读(674) 评论(0) 点赞(25) 收藏(3)
今天学的少了点…
[修饰符列表] 构造方法名 (形参){
构造方法体;
通常在构造方法体中给属性赋值,完成属性的初始化
}
构造方法的两个特点:
当一个类没有提供任何构造方法,系统会默认提供一个无参数的构造方法。(这个构造方法被称为缺省构造器)
构造方法的作用:
new 本质是在调用构造方法
package Demo;
public class Test_Student {
private String name;//设置私有属性
//无参构造
public Test_Student() {
this.name = "DMIND";
}
//有参构造
public Test_Student(String name){
this.name = name;
}
//getName()
public String getName(){
return this.name;
}
//setName
public void setName(String arg){
this.name = arg;
}
}
如果某个类型的所有对象的某个属性值都是一样的,不建议定义为实例变量,浪费内存空间。
建议定义为静态变量,在方法区内只保留一份,节省内存开销。
① 实例的,都是和对象相关的。都是先new对象,访问时采用:引用.
的方式访问
② 静态的,都是和类相关的。访问时建议采用:类名.
的方式访问,当然也可以采用"引用."
的方式访问
。不需要new对象
package Demo;
public class Test_static {
//实例变量
int i = 10;
//实例方法
public void m1(){}
//静态变量
static int k = 10;
//静态方法
public static void m2(){}
}
定义:
Static{
code....
}
特点:类加载时执行,并且每个静态代码块只会执行一次。
注意:静态代码块在类加载时执行,并且在main方法前执行
public class Test_static {
static {
System.out.println("First");
}
public static void main(String[] args){
System.out.println("Third");
}
static {
System.out.println("Second");
}
}
//First
//Second
//Third
语法:
{
code....
}
每调用一次构造方法,就会调用一次实例语句块。因而如果构造方法中有一部分重叠的代码,可以放在实例语句块中。
静态代码块 -> main函数 -> 实例语句块 -> 构造函数
public class Test_InstanceCode {
static {
System.out.println("静态代码块");
}
//入口
public static void main(String[] args){
System.out.println("main方法");
new Test_InstanceCode();
new Test_InstanceCode("dwa");
}
//实例语句块
{
System.out.println("实例语句块");
}
// {
// System.out.println("实例语句块2");
// }
//Constructor
public Test_InstanceCode(){
System.out.println("无参数构造方法");
}
//Constructor
public Test_InstanceCode(String name){
System.out.println("有参数构造方法");
}
}
/*
静态代码块
main方法
实例语句块
无参数构造方法
实例语句块
有参数构造方法
*/
原文链接:https://blog.csdn.net/weixin_45669205/article/details/117294338
作者:天花灯
链接:http://www.javaheidong.com/blog/article/207380/af6fb345ac9bab874738/
来源:java黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 java黑洞网 All Rights Reserved 版权所有,并保留所有权利。京ICP备18063182号-2
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!