1、封装:将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现隐藏信息的操作和访问
2、封装的两个原则:
1.把所有的属性隐藏起来
2.为允许的属性创建相应的方法
3、实现封装的步骤
1.所有属性修改为private,以示私有化,即不能被外部访问
2.为私有化的成员变量提供公有的访问方法,如果是设置方法必须是以set开头的方法定义,如果是获取方法且是非布尔值的必须是以get开头的方法定义,如果是布尔值必须是is开头的方法定义
3.可以在以上访问方法中编写相关的业务逻辑代码
4、包的概念
1.本质上就是一个目录,但只能存放类(class)
2.功能:解决命名冲突,便于分门别类和管理,提供了访问的作用域
3.创建包通过关键字package
4.包名采用点分割,全小写标识符构成的序列
5.建包的语句必须写在java文件的首行
6.在java中所有的类都在一个包中存在,而java.lang包中存放的是标准类
7.如果在当前类中需要其他类但不是在同一个包中时,则需要显示导入指定的包,可能通过关键字,import导入
8.在导入包中的类如果比较多时,则可以通过*这个通配符来表示所有的类
9.必须先创建包,package,再导入包import
5、访问修饰符
2.public可以在包内(同一个类,同一个包),包外随意访问
3.默认修饰符(不写)可以在包内(同一个类,同一个包)随意访问
4.protected跟它有关系的都可以访问(同类,同包,子类)
5.private只能在同类中访问
7、static关键字
1.如果数据需要被所有对象共享,那么这个数据可以通过static来修饰的成员变量存储,此成员变量称为静态成员变量
2.操作静态变量数据的方法称为静态方法
3.静态代码块主要用来初始化静态成员变量
4.静态成员可以通过类直接访问
5.静态代码块优先于构造器方法,多个静态代码块按顺序执行
6.实例变量属于每个对象独有,静态变量属于所有对象共有,即属于类的
7.静态方法只能访问静态成员,实例方法可以访问所有成员
8.
9.
.
8、继承
1. 继承可以优化代码,重⽤代码
2. 当有多个类属于同⼀个逻辑(is-a) 时并有相同代码时可以 使⽤继承实现
3. 先编写⽗类再编写⼦类,⼦类 extends ⽗类,且必须单⼀ 继承
4. 被protected修饰的成员能在类中被访问,能在包中被其他 类访问,能在包外的⼦类中访问
5. 在⼦类中访问⽗类的成员时可通过super关键字实现,可以 调⽤⽗类的成员变量,成员⽅法,构造⽅法,在⼦类构造⽅ 法中调⽤⽗类的构造⽅法时但必须把super写在⾸⾏
6. 在创建⼦类对象时先创建⽗类对象,所以在调⽤⼦类构造⽅ 法时先调⽤⽗类构造⽅法且默认调⽤⽗类的⽆参构造⽅法, 在⼦类中也可以通过supter调⽤指定的⽗类构造⽅法
继承public和protected修饰的属性和⽅法,不管⼦类和 ⽗类是否在同⼀个包⾥ 继承默认权限修饰符修饰的属性和⽅法,但⼦类和⽗类 必须在同⼀个包⾥