南通学校网站建设是否提供编辑指导?
摘要:做网站编辑有人带吗,南通学校网站建设,运城网站建设费用,做视频网站犯法吗一,构造器 创建一个类的方法时会调用该类的构造器构造器,也叫构造方法构造器是属于类的&
做网站编辑有人带吗,南通学校网站建设,运城网站建设费用,做视频网站犯法吗一#xff0c;构造器 创建一个类的方法时会调用该类的构造器 构造器#xff0c;也叫构造方法 构造器是属于类的#xff0c;对象不可调用 构造方法没有返回值类型 构造方法一般用public修饰#xff0c;也可用private修饰#xff0c;例如 public class Test {private T…一构造器 创建一个类的方法时会调用该类的构造器 构造器也叫构造方法 构造器是属于类的对象不可调用 构造方法没有返回值类型 构造方法一般用public修饰也可用private修饰例如 public class Test {private Test() { // 这个构造器外部无法调用super();}public static Test getTest() {return new Test();}
}如果用户没有定义构造器创建类的对象时会调用默认的无参构造器用户定义构造器后创建类的对象时会调用用户定义的构造器 public class A {}class B {public static void main(String[] args) {// new关键字会在堆区开辟出一块内存空间用于存放真正的对象// 对象创建完成后会返回一个该类的引用赋值给该类的引用变量A a new A();}
}成员变量位于内存中的堆区 局部变量位于内存中的栈区 当局部变量名和成员变量名相同时采取就近原则 二方法重载 方法重载出现在同一个类中方法名相同参数列表不同其他不做限制这种现象就叫方法重载构造器也可以进行方法重载构造器也是方法 三static关键字 static可以用来修饰属性方法构造器除外代码块类静态内部类 静态成员存放在内存中的静态区静态区的内容会随类的加载加载到内存 静态成员只有当类被卸载的时候随类的卸载而退出内存 静态成员不能访问类中的非静态成员 static修饰属性静态属性 static修饰的属性属于类本身static修饰的属性推荐的访问方式为类名.静态属性一般不建议使用构造器对静态属性进行初始化 static修饰方法静态方法 推荐访问方式类名.静态方法 static修饰代码块静态代码块 静态代码块会在类加载的时候自动执行 静态代码块匿名代码块构造器执行顺序 静态代码块只执行一次 - 匿名代码块 -构造器 静态代码块只会执行一次因为类只会加载一次 jvm加载字节码文件会先从有main方法的文件加载 public class Test {static {System.out.println(静态代码块);}// 匿名代码块会在构造器之前执行{System.out.println(匿名代码块);}public Test() {System.out.println(构造器);}public static void main(String[] args) {new Test();System.out.println(------------------);new Test();}
}/*******执行结果**************
静态代码块
匿名代码块
构造器
------------------
匿名代码块
构造器
*/四封装 属性封装 使用private修饰提供公共访问方法 方法封装 将冗余的代码或功能重复的代码封装为一个方法 类 类本身就是一种封装 五继承 class 子类 extends 父类 {}父类当中的私有属性子类不可直接访问 在创建子类的对象时会先去调用父类的无参构造器然后再调用子类的构造器 若父类中没有无参构造器子类在创建对象时若用户没有主动调用父类的构造器程序将编译报错因为在父类中找不到相应的无参构造器 class A {private int i;public A(int i) {this.i i;}
}public class B extends A {// 该静态代码块不会执行因为文件无法通过编译static {System.out.println(m);}public static void main(String[] args) {new B(); // 编译报错父类中找不到相应的无参构造器}
}结合静态代码块和匿名代码块 class A {static {System.out.println(A static);}{System.out.println(A 匿名);}public A() {System.out.println(A);}
}
public class Main extends A {public Main() {System.out.pr
