Java第七课

来源:互联网 发布:安卓模拟器对比 知乎 编辑:程序博客网 时间:2024/05/15 23:49

Java中专有的名词:

OO:面向对象 OOP:面向对象编程 OOA:面向对象分析OOD:面向对象设计


在Java的API中,awt和swing的区别:

1.awt利用操作自带的组件风格构建图形化界面,在跨平台使用时,可能风格不一致

2.swing是awt的扩展包,很多类直接或间接继承awt包中的类,有自己独立的显示风格,跨平台风格一致


布局管理器:

1.BorderLayout:边框布局,将组件按东西南北中的方式进行布局,每个方向都只放一个组件,当窗体变大或缩小,组件随之变化,是Frame,JFrame默认的布局管理器

2.FlowLayout:流式布局,将组件从上到下,从左到右,进行排列,组件的大小不会随窗体的改变而改变,如果组件超出窗体,组件会自动换行,是Pcmel,JPanel的默认布局管理器。

3.GridLayout:网格布局,将整个窗体分为大小相等的几个部分,每个部分放一个组件,组件的大小 也会随窗体大小变化而变化(扫雷玩过吧,就是那个状态的)


在产生子类对象前会先产生父类对象,在父类基础上添加子类特有的属性和方法,所以一个子类对象 包含一个完整的父类 对象 ,自然可能重用父类的属性和方法,所以继承也称为展


super():调用父类的构造方法,产生父类 对象,如果子类没有书写super(),虚拟机会自动执行super(),这个也只能放在子类的构造方法的第一句


如果父类中不存在无参构造方法,子类继承父类,就必须使用super(参数)显示调用


重写:

1.重写发生在父类与子类之间

2.子类和父类的方法名,参数,返回类型都要相同

注:如果调用调用子类的方法, 会优先调用子类重写的方法,如果子类没有重写父类方法,就调用父类方法


在方法前加入@override:表示强制检测当前方法是否重写了父类方法,如果没有重写,那么编译错误


如果一个类被修饰为final,表示该类不能被 子类所继承

如果是方法被修饰为final,表示该方法不能被重写

如果是变量被修饰为final。表示变量是常量,如果是基本类型,表示该变量值不能改变,如果是引用类型,表示该变量不能指向别的对象


要比较对象,调用equals()该方法是object父类的方法,每个子类都可能继承,但object中的equals()默认比较的是对象的地址,如果想比较内容,那么就需要重写该方法

String这个类这所以可以调用equals()比较内容是因为该重写了equals()


几种访问修饰符:

public:该类或非该类均可访问

private:只有该类可以访问

protected:该类及其子类的成员可以访问,同一个包中的类也可访问

默认:相同数据包中的类可以访问


私有属性(被private修饰的成员变量)加上get/set方法,可以将属性设成只读或只写属性,可以在设置值时加入参数合法性的验证

封装:

按照信息隐藏的原则,将数据组织在一起,封装包含两层含义:1.信息集合    2.信息隐藏   对象可以看作属性和方法的封装


内部类:

在一个类中,再建一个类,叫做内部类

内部类相当于外部类的属性,可以是protected,private,static(外部不行),内部类产生的class文件格式是:外部类名$内部类名.class


内部类对象的产生需要依赖于外部类对象


静态块:在类加载时执行,只执行一次  格式:static{ }


只有一对花括号的叫实例化块:每产生一个对象就执行一次,在super()后执行


0 0
原创粉丝点击