课程内容:
-
StringBuffer类常见的方法
-
面向对象的高阶特征
-
访问权限修饰符
-
static修饰符
-
final修饰符
-
abstract修饰符
-
-
单例模式
StringBuffer类常见的方法:*
-
append(String):往字符串里面追加连接
-
reverse():翻转字符串
-
insert(int,char):往指定下标处插入元素
访问权限修饰符:
-
public : 公共的 表示谁都可以使用的
-
protected :受保护的 只有本包类可以访问 + 包外有继承关系的子类中可以访问
-
(default): 默认的 只有本包【文件夹】内可以访问
-
private : 私有的 只有本类可以访问的
-
===============================================
-
各自能修饰哪些内容
-
类 成员[属性/方法]
-
public T T
-
protected F T
-
default T T
-
private F T
-
面试题:A类里面定义一个public修饰的方法 在B类里面可以访问吗?
不一定
如果B类想要访问A类里面的方法的话 前提是需要前访问倒A类
如果A类都访问不到 里面即使方法是public修饰的 B类也访问不了
一个类里面的方法 访问权限最大应该和类保持相同的权限
static:静态的 修饰符 相当于汉文中的形容词 *
-
面试题:static能修饰哪些东西?
-
属性:
-
静态属性 表示整个类型共享一份的属性 不是每个对象都有一份的属性 依赖于类存在
-
普通属性:表示每个对象都有一份的属性 依赖于对象存在
-
eg: System.out[static]
-
eg: System.in [static]
-
面试题:Java中属性和变量谁大?变量[成员、属性 + 局部]
-
面试题:static为什么不能修饰局部变量?
static修饰的变量要求类一加载就要在内存里面找到他但是局部变量只有方法调用 代码执行到那一行才能创建 类的加载永远在前面 方法调用永远在后面 这两个时间点赶不上一起 所以static不能修饰局部变量
-
-
方法:
-
静态方法 需要拿着类名去调用
-
普通方法:需要拿着对象去调用
-
eg:Math.random() + Math.pow() + Math.sqrt()
-
eg:System.arraycopy() + Arrays.copyOf()
-
面试题:静态方法和普通方法谁调用简单?
-
静态方法 类名.静态方法
-
-
面试题:既然静态方法调用简单 开发的时候为什么不把一个类里面所有的方法全部写成静态的呢?
因为静态方法里面只能**直接的**访问静态的成员
如果想要在静态的方法里面访问非静态的成员 需要创建对象 拿着对象去访问
-
-
代码块:初始化一个普通属性的
-
如果我们想要初始化一个静态属性 应该使用静态代码块 -》 static{}
-
普通代码块:用来给普通属性赋值 创建对象的时候执行 创建几个对象执行几次
-
静态代码块:用来给静态属性赋值 当类第一次被加载的时候执行 从头到尾执行一次
-
final : 最终的 修饰符 相当于汉文中的形容词
-
面试题:final能修饰哪些东西?
-
类:最终类 "骡子类"
-
特点:不能有子类 但是可以有父类
-
eg:String和Math类都是最终类
-
-
方法:最终方法
-
特点:只能被继承 不能被覆盖
-
-
变量[成员 + 局部]:最终变量 常量
-
特点:一旦赋值之后 就不能再修改“值”
-
final修饰基本数据类型 保护数值不变
-
final修饰引用数据类型 保护地址不变
-
final double Π = 3.14;
-
abstract : 抽象的 修饰符 相当于汉文中的形容词
-
面试题:abstract能修饰哪些内容?
-
类:抽象类 表示这个类型不形象不具体
-
特点:不能创建对象
-
面试题:抽象类是类吗?是
-
抽象类里面有构造方法吗?有 Java中只要是个类就有构造
-
抽象类是类 有构造方法 但是不能创建对象 抽象类中的构造方法作用?
-
给子类构造方法首行的super()调用的
-
-
-
方法:抽象方法 表示这个类型一定会这个方法 但是现在给不出具体的实现 待留给子类去实现
-
一个类里面只要出现抽象方法 这个类就要变成抽象类
-
抽象类里面既可以写抽象方法 也可以写普通方法
-
面试题:final和abstract能不能同时修饰一个方法?
-
不可以
-
final修饰的方法叫做最终方法 不能被覆盖
-
abstract修饰的方法叫做抽象方法 需要子类去覆盖
-
-
单例模式:
模式:Java中本没有模式的概念 用的程序员多了于是有了模式
---------周树人
设计模式:23种
单例模式:控制一个类有且只有一个对象
标签:面试题,修饰符,访问,m1,day11,修饰,static,方法 From: https://www.cnblogs.com/zhaodenghui33/p/18185490