Java基础(三)——封装、重载、继承等

一、封装

1.     访问修饰符

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

private:只有该类可以访问。

Protected:该类及其子类的成员可以访问;同一个包中的类也可访问。

默认:同一包中的类可以访问。

2.     UML类图

       

3.     类的构造方法

作用:负责对象初始化工作;类的构造方法确定在用户操作对象之前,保证初始化。

语法规则:构造方法名与类名相同;

          无返回类型;

          方法实现主要为字段赋初值;

构造方法的调用:new(返回新建实例的引用),系统默认的构造方法为无参构造方法

构造方法的重载:通过调用不同的构造方法来表达对象的不同初始化方式。

4.     this关键字

特点:

a)      在类的方法中使用的this关键字代表的是调用此方法的对象的引用;

b)      this可以看做是一个变量,它的值是当前对象的引用;

c)       使用this关键字可以处理方法中的成员变量和形参同名的问题;

d)      当在方法内需要用到调用该方法的对象时,可以用this;

e)      在类的构造方法中可以调用this([参数列表])来调用该类的指定构造方法;

f)       两个构造方法同名,参数不同,称为构造方法的重载;

g)      构造方法可以调用构造方法,但是必须放在第一条语句。

5.     static关键字

特点:

a)      修饰成员变量,方法成为静态变量,静态方法。被static修饰的变量或方法,是所有对象共享的,不再单属于哪一个对象,所有该类对象均可以使用该变量或方法,因此使用时可以用  类名.变量名,而不用对象.变量名(对象名.变量名也可以用,不推荐);

b)      static修饰语句块时,称为静态代码块,先于构造方法之前执行,只会执行一次,用来对静态成员做初始化;

c)       静态修饰的成员被所有对象共享;

d)      静态方法只能访问外部的静态成员;

e)      static修饰的变量被对象共享,导致一个对象对其值的改变导致的改变值在其他对象上也适用。即对象1将静态变量值由a改成b,当对象2调用该变量值时,值为改变后的b;

f)       静态方法不能访问非静态变量,静态方法中不能使用this;静态方法优先于对象产生;

g)      static语句块:在类被加载的时候就会执行,只会执行一次,用来对静态的变量赋值;且优先于构造方法的执行

static{

                  System.out.println("static语句块");

                  num1 = 100;

         }

6.     设计模式

a)      单例模式

要点: 某个类只有一个实例;

       该类必须自行创建这个实例(对象);

       必须自行向整个系统提供这个实例,即对外提供使用该实例的接口。

7.     方法重载

同一类中,同名不同参的方法成为重载方法;

仅有返回类型不同的方法不能成为重载,即方法重载必须方法签名不同(方法签名=方法名+参数列表);

8.     标准Java包就是层次型包结构;

包可以有效的防止命名冲突和混乱;

包中的成员可以相互访问;

包声明必须在源程序的首行;

包名由小写单词组成;

一个类可以使用同一包中所有类以及其他包中的所有公开类;

访问其他包中的公开类的方式:1)简单在每个类前面加上完整包名;

                            2)使用import语句来导包;

9.     继承

继承中父类更通用更抽象,子类更特殊更具体;

继承即基于已存在的类来构建新类,就重用了父类的方法和属性,子类中还可以添加新的方法和属性;

类之间的关系:继承体现,组合体现,接口体现;

继承特点:子类继承了父类的成员;具有层次结构;实现代码重用;

继承关键字:extends;

super关键字:

a)      this保存的是当前对象地址的引用,即子类,super保存的是父类对象地址的引用;

b)      当子父类的成员出现同名时,可以用super来进行区分;

c)       当构造一个子类对象的时候一定会先调用父类的构造方法(没有父哪有子)来构造父类对象,调用父类构造方法的语句必须是子类构造方法中的第一条指令;

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值