首页 > 代码库 > java面向对象1
java面向对象1
类是面向对象的重要内容。类可以当做一种自定义的数据类型。
类的定义格式如下:
修饰符 Class 类名
{
[静态代码块]
[初始代码块]
[构造器]
[Field]
[Method]
}
1、类的修饰符包括:public、final、abstract、默认。
2、Field是用来存储类、实例的数据,Method则是完成某一功能。静态代码块、初始代码块、构造器是用来对类的、实例的Field进行初始化
3、静态代码块是类在初始化的阶段执行的,而不是在创建对象的时候才执行。
4、初始化代码块、构造器都是在实例对象的时候执行的。
5、Field、Method分为:类Field、实例Field、类Method、实例Method。如被static修饰则为类的,类名.***调用,没有被static修饰,
就是实例的,对象.***调用
class Grandpa { static{ System.out.println("Grandpa:静态代码块 "); } { System.out.println("Grandpa:构造代码块"); } public Grandpa(){ System.out.println("Grandpa:构造方法"); } } class Father extends Grandpa{ static{ System.out.println("Father:静态代码块 "); } { System.out.println("Father:构造代码块"); } public Father(){ System.out.println("Father:构造方法"); } } class Son extends Father{ static{ System.out.println("Son:静态代码块 "); } { System.out.println("Son:构造代码块"); } public Son(){ System.out.println("Son:构造方法"); } } public class Test{ public static void main(String[] args) { new Son(); new Son(); }
运行结果:
?
1 2 3 4 5 6 7 8 9 | Grandpa:静态代码块 Father:静态代码块 Son:静态代码块 Grandpa:构造代码块 Grandpa:构造方法 Father:构造代码块 Father:构造方法 Son:构造代码块 Son:构造方法 |
?
1 2 3 4 5 6 | Grandpa:构造代码块 Grandpa:构造方法 Father:构造代码块 Father:构造方法 Son:构造代码块 Son:构造方法 |
由运行结果可以看出:
1、静态代码块只会在类加载的时候运行一次,之后都不会再运行了。
2、实例化的时候,先执行追溯执行父类的构造代码块、构造方法(不带参数)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。