《明解Java》笔记:Java基础篇_面向对象

#封装
##将类的某些信息隐藏起来,在设置访问的接口
##(通俗的讲设置访问权限)


访问权限:public、protected、默认、private
  • private    代表私有的意思
  • get 、set方法
#get方法 set略
    public void setName(String name){
        this.name = name;    ##this谁调用我我就代表谁!
    }

    public String getName(String name){
        this.name = name;
    }      

package
定义包:
package 包名;
注意:1.必须放在Java源文件中的第一行
2.一个Java源文件中只能有一个package
3.包名全部英文小写
4.命名方式:域名倒序+模块+功能

导包:
import 包名.类名;
系统常用包
java.lang    包含基础类
java.util       包含各种工具类
java.io        包含输入、输出功能

#static
《java编程思想》P86说到:
“static方法就是没有this的方法。在static方法内部不能调用非静态方法,反过来是可以的。
而且可以在没有创建任何对象的前提下,仅仅通过类本身来调用static方法。
这实际上正是static方法的主要用途。”

# 注意:
静态成员随类的加载产生(只会调用一次),直至类销毁才回收(生命周期长)
不存在:静态的类、静态的局部变量、静态方法不能访问 非静态成员/方法

#关于静态的初始化
顺序:
    ①:static        随着类的加载而加载只执行一次    
    ②:构造代码块  随类测实例化而加载(new一次执行一次)
    ③:构造方法      类的实例化new一次执行一次
    ④:方法调用      类名.方法名          
      

#继承
#所谓继承将自己的特性继承给自己的后代
#关键字extends
特点:利于代码复用,缩短代码周期

1.重写与重载
满足以下条件称之为重写:
a.同一个类
b.方法名相同,参数列表不同(参数顺序,个数,类型)    !与参数名无关
c.方法返回值,访问修饰符任意

重载:
a.满足继承关系的子类中
b.方法名,参数个数,顺序,类型与父类相同
c.放回值类型与父类兼容(访问修饰符的限定范围>=父类方法)

2.super 和 this
super.使用
父类对象的引用
访问父类的成员方法
访问父类的成员属性
访问父类的构造方法

this.使用
当前类对象的引用    \
访问当前类的成员方法
访问当前类的成员属性
访问当前类的构造方法
二者使用请注意调用范围 !!!

注意:不能再静态中使用super和 this

3.final
a.修饰类表示不允许被继承
b.修饰方法表示不允许被子类重写
c.修饰变量表示不允许修改
d.可以配合static使用(static修饰只执行一次的方法或属性)

注意:final修饰的方法可以被继承
修饰的引用类型的变量:初始化之后不能再指向另一个对象,但指定对象的内容是可以发生改变的 !!!~

#多态

多态存在的三个必要条件
一、要有继承;
二、要有重写;
三、父类引用指向子类对象


向上转型(父类指向子类对象)
可以调用子类重写父类的方法以及父类派生的方法
无法调用子类独有方法

注意:父类中的静态方法无法被子类重写,所以向上转型之后,只能调用父类原有的父类静态方法

向下转型(子类指向父类对象)
可以调用子类特有的方法(子类引用调用父类方法?)
满足条件才能进行强转

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



#Java#
全部评论

相关推荐

劝退式:感觉有人回才是不正常的
点赞 评论 收藏
分享
少糖去冰的小师弟很沉稳:不是哥你去这个的话我可要说你了哈
点赞 评论 收藏
分享
评论
点赞
4
分享

创作者周榜

更多
牛客网
牛客企业服务