day07 面向对象知识
来源:互联网 发布:淘宝直通车日常计划 编辑:程序博客网 时间:2024/06/05 12:01
package关键字
就是使用包名将程序文件1个个隔离.程序第一行
语法:pachage 包名;
com._520it.crm.util;
编译带有package的类
javac -d xxx.java
运行
java com._520it.xxx
import
导入包名,需要调用的时候
静态导入:
package _import;import static java.util.Arrays.sort;public class test {public static void main(String[] args) {int[] arr = {11,22,55,02};sort(arr);System.out.println(java.util.Arrays.toString(arr));}}
封装
为了隐藏对象功能实现,使用者没必要知道细节.
访问修饰符
public 权限最大
private 仅类中访问
默认 类内部,同一个包
protected 类内部,同一个包,子类
this关键字
哪个对象调用了this所在的方法,该方法中的this就是哪一个对象
this的使用:
1\解决成员变量和参数之间的二义性,必须使用(get/set)
2\同一个类中多个实例方法间的调用.
package _this;public class demo {/** * @param args */public static void main(String[] args) {new newDemo().setxxx();}}class newDemo{void setxxx(){this.setyyy();System.out.println("这里是xxx");}void setyyy(){System.out.println("这里是yyy");}}3\将当前对象作为参数传递到另一个方法
4\作为方法的返回值(链式编程)
package _this;public class demo {/** * @param args */public static void main(String[] args) {new newDemo().append().append();}}class newDemo{void setxxx(){this.setyyy();System.out.println("这里是xxx");}void setyyy(){System.out.println("这里是yyy");}newDemo append(){return this;}}5\构造器重载的互相调用 (构造器中出现this必须在第一行)
少参数调用多参数
6\static不能和this一起使用
static优先于对象存在,static是加载虚拟机就存在了,而this是new出来的
引出继承
子类可以继承到父类哪些成员
1):若父类成员使用public或者protected修饰,子类可以继承.
2):若父类成员使用包访问权限(不写):
若子类和父类在同包中,可以继承.
若子类和父类不在同包中,则不能继承.
3):若父类成员使用private修饰,子类不能继承.
4):父类的构造器,子类也继承不到.(两个类名都不同,怎么继承?)
所有类(不包括objec),都有一个根类,object.
java中的继承支持单继承,不支持多继承
方法覆盖
当子类继承与父类的时候,使用的方法不一定适合于子类,那么就使用方法覆盖.
方法覆盖遵循一同二小一大:
一同:方法名相同
二小:子类方法的返回类型应该小于等于父类方法的返回类型
子类方法的返回类型要么等于父类方法的返回类型,要么是父类方法返回类型的子类.
子类方法不能抛出新的异常
一大:子类方法的访问修饰符,必须大于等于父类方法的访问修饰符
java5开始,凡是方法覆盖的方法上面都有@override
super关键字
当前对象的父类对象
super应用的场景
super.fly();//调用父类的方法
suerp.name; //调用父类的成员变量
super(参数)//调用父类的构造方法
子类的创建过程:
1):创建子类对象时,会调用子类的构造器,而在调用子类构造器之前,会先调用父类的构造器.
2):先对父类做初始化,再对子类做初始化.
隐藏问题(把之前的挡住了)
1.局部变量和成员变量同名.使用this来解决
2.在满足情况下,子类和父类成员变量同名,子类隐藏了父类的变量,使用super.成员变量来解决
3.在满足情况下,子类和父类存在相同的静态方法
Object类
protected void finalize()
public boolean equals(Object obj)
public int hashCode()返回一个hash值,决定了该对象在哈希表中的存储位置.
public String toString()返回该对象的字符串表示,一般都重写此方法,观察对象.
- day07 面向对象知识
- day07-面向对象
- day07<面向对象+>
- 黑马程序员--面向对象(day07)
- Java基础Day07--面向对象
- 黑马程序员-Java面向对象-day07
- 常量_面向对象基本概念day07
- 黑马程序员-day07-面向对象(抽象类)
- 黑马程序员-day07-面向对象(接口)
- 黑马程序员-day07面向对象2
- 面向对象 +JAVA学习笔记-DAY07
- JAVASE基础-day07(面向对象)
- 黑马程序员——day07面向对象(二)
- 黑马程序员-day07-面向对象(继承和final关键字)
- Java基础:Day07笔记内容 (面向对象)
- java笔记--Day07--面向对象基础(相关概念)
- day07 面向对象(构造方法、static类变量)
- 第3章:面向对象编程(day05-day07)
- 1067. Sort with Swap(0,*) (25)
- 第七天、在window和linux下搭建ftp服务端
- JAVA多线程和并发基础面试问答
- 十四、Hive功能架构
- 47.android服务service-代码注册广播接收者
- day07 面向对象知识
- qt-vs添加图片资源
- liaohanlong
- Android加载.so的那些事
- 当社会行业的行业定制软件采购,市场需求不再旺盛怎么办?
- 未名湖边的烦闹
- 1050. 螺旋矩阵(25)
- jupyter install problems for python2.7
- jQuery.ajax()