Test10

  • 包package与导入import
  1. 包机制:
  1. 、便于管理众多的资源
  2. 、提供了多重的命名空间
  3. 、命名规范:公司域名倒着写   com.xxxx.XXX
  4. 包信息存在于java文件的首行
  1. 导包:
  1. 、指明要使用的类的位置
  2. 、import.包名.类名;在类的上面,包信息的下面
  3. 、使用的时候指明类的权限定名,完整路径。只能在当前一次使用有效
  4. 模糊匹配*,模糊匹配当前所有包下大的所有类 import.java.util.*;影响编译效率不会影响运行效率。
  5. 、静态导入,只能导入某个类中的静态内容:Math.PI
  • private私有的:
  1. 成员修饰符,不能修饰局部
  2. 成员只能在本类中使用
  3. 提供公共的访问的方式:公共的访问方式(非静态)设置器setter,访问器getter:

Public String getter(reture null;){};public void setter(String name){name=name };

  1. 私有的属性配合公共的访问方式提供成员的安全性
  2. 属性私有化配合公共的访问的方式就是封装的具体体现,方法,类,都是封装的体现,私有是封装,封装不一定是私有
  • 封装:
  1. 隐藏内部的实现细节,对外提供公共的访问方式
  2. 提高了安全性,提高了复用性
  3. 未来所有Javabean类所有的属性都应该私有化,并提供公共的访问方式
  • javabean的定义规范:

   1.类是公共的

   2.至少提供一个构造器

   3.私有的属性

   4.公共的访问方式

五、继承:

1、子类继承父类,就有权使用父类中的内容。子类中可以扩展自己独有的内容:延续+扩展

2、定义:子类  extends 父类,提高了代码的复用性

3、父类或基类或超类:被继承的类;子类,派生类:继承父类的类

4、javabean中的继承是单继承机制

优点:简单 缺点:不便后期维护,不够灵活

一个子类只能存在一个直接父类,一个父类可以存在多个父类

  1. 面向对象的设计原则之一:开闭原则,对修改关闭,对扩展开放
  • super:
  1. super与this的区别:this指代当前对象,super指代父类对象
  2. 先静态后成员,先父类后子类,在子父类关系下创建子类对象: 在子类内存空间中存储父类对象,可以通过super在子类中使用父类对象。
  3. 在子类的构造器首行通过super调用父类的执行构造器

Super(参数列表)默认在子类的构造器的首行会调用父类的空构造super()在子类的构造器首行不能同时出现this和super因为都需要定义在构造器的首行

  1. super区分子父类中同名成员问题,如果如果子父类中出现同名的成员,子类中使用这个成员,默认就近原则如果想要调用父类同名成员,通过super.调用父类成员 (super指代子类内存中的父类)

5、 默认就近原则找局部可以通过this.调用本类成员可以通过super.调用父类成员如果不存在同名问题,指代父类成员可以省略super.如果不存在同名问题,知道子类成员可以省略this.

  • Overrride重写:
  1. 重写与重载的区别:
  1. 、重载:同一个类中的多个方法,方法名相同,参数列表不同|方法签名不同
  2. 、重写:不同的两个类,继承|实现关系,方法签名相同

2、重写的要求: == 方法签名

                <= 返回值类型,基本数据类型 : 完全相等,引用数据类型 : 子类中重写方法返回值类型 <= 父类中被重写方法的返回值类型,没有返回值类型 : 完全相等

                >= 权限修饰符 : 子类中重写方法的权限修饰符 >= 父类中被重写方法的权限修饰符

3、不能被重写的方法:

    1)、被private修饰的方法不能被重写

     2)被final修饰的方法不能被重写

      3)、被static修饰的方法不能被重写

4)、子类中如果存在与父类静态方法同名的方法,要求子类中的同名方法也需要被static修饰

七、object类

1、是java中所有类的父类java中的类都会直接或者间接的继承自Object类,如果一个类没有显示的继承自其他类,默认继承自Object类

2、toString()  把对象数据转为字符串的表现形式,如果直接打印一个引用,默认打印的是这个调用toString方法的返回值,需求: 以一个字符串展示一个对象,想要了解到对象的一些基本的信息(成员变量的值)Object类中的toString方法的实现: 默认以对象的地址展示

            public String toString() {

                Return getClass().getName() +"@"+ Integer.toHexString(hashCode());

            }

子类中重写toString方法,实现返回对象的成员变量的值非地址值。

3、equals 比较两个对象是否相等

   Object 类中equals默认比较 : 对象的地址

             public boolean equals(Object obj) {

                return (this == obj);

                                }

 如果不想比较对象的地址,想要比较所有成员变量的值,可以在子类中重写equals方法:equals与==之间的区别:

           == : 基本数据类型比较数据值

             引用数据类型比较对象的地址值

equals : 只能比较引用数据类型

                  默认比较对象的地址

               可以通过重写实现比较对象内容(成员变量的值) 4、注意: 以后要在javabean类中重写toString()与equals()方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值