java基础

成员变量和局部变量

1,在内存中的位置不同

成员变量:在类中定义

局部变量:在方法中定义或者方法的参数

2,在内存中的位置不同

成员变量:在堆内存(成员变量属于对象,对象进堆内存)

局部变量:在栈内存(局部变量属于方法,方法进栈内存)

3,生命周期不同

成员变量:随着对象的创建而存在,随着对象的销毁而消失

局部变量:随着方法的调用而存在,随着方法的调用完毕而消失

4,初始化值是不同

成员变量:有默认初始化值引用类型默认为空

局部变量:没有默认初始值必须定义赋值然后才能使用

注意:局部变量名称可以和成员变量名称一样在方法中使用的时候采用的是就近原则

1 构造方法名称与类名相同没有返回值声明

2 构造方法用于初始化数据

3 每一个类中都有一个默认的无参构造方法

4 如果类中有显式的构造方法那么默认构造方法将无效

5 如果有显式的构造方法还想保留默认的构造方法需要显式的写出来

6 构造方法可以有多个但参数不一样称为构造方法的重载

7 在构造方法中调用另一个构造方法使用this(......)该句代码必须在第一句

8 构造方法之间的调用必须要有出口

9 给对象初始化数据可以使用构造方法或者setterr方法通常情况下两者都会保留

10 一个好的编程习惯是要保留默认的构造方法为了方便一些框架代码使用反射来创建对象

1、继承是发生在多个类之间

2、继承使用关键字extends

3 、Java只能单继承,允许多层继承

4、是被继承的类叫父类,继承父类的类叫子类

5、在父类中的非私有属性和方法可以被指类继承

6、构造方法不能被继承

7、创建对象会调用构造方法,调用构造方法不一定就是创建该类对象

8、实例化子类对象会先调用父类的构造方法,如果父类中没有默认的构造方法,那么子类必须显式地通过super来调用父类的带参构造方法,super也只能在纸类构造方法中的第一句

  1. 定义一个接口使用interface关键句

  2. 在一个接口中只能定义常量抽象方法jdk 1.8之后可以定义默认的实现方法

  3. 接口可以继承多个接口

  4. 一个具体类实现接口使用implements关键字

  5. 一个类可以实现多个接口

  6. 抽象类实现接口可以不实现接口的方法

  7. 在接口中定义的方法设有声明访问修饰符默认为public

  8. 接口不能有构造方法

  9. 接口不能被实例化

  10. 抽象类可以没有抽象方法有抽象方法的类必须是抽象类

  11. 非抽象类继承抽象类必须实现所有抽象方法

  12. 抽象类可以继承抽象类可以不实现父类的抽象方法

  13. 抽象类可以有方法实现和属性

  14. 抽象类不能被实例化

  15. 抽象类不能声明为Final

  16. 抽象类可以有构造方法

单例设计模式

简单工厂模式

抽象类应用---模板方法模式

接口应用---策略模式

静态代理模式

适配器模式

装饰者模式

生产者与消费者应用案例

相关推荐
没差c7 分钟前
springboot集成flyway
java·spring boot·后端
无小道13 分钟前
Qt——QWidget
开发语言·qt
时艰.18 分钟前
Java 并发编程之 CAS 与 Atomic 原子操作类
java·开发语言
梵刹古音1 小时前
【C语言】 函数基础与定义
c语言·开发语言·算法
编程彩机1 小时前
互联网大厂Java面试:从Java SE到大数据场景的技术深度解析
java·大数据·spring boot·面试·spark·java se·互联网大厂
笨蛋不要掉眼泪1 小时前
Spring Boot集成LangChain4j:与大模型对话的极速入门
java·人工智能·后端·spring·langchain
梵刹古音1 小时前
【C语言】 结构化编程与选择结构
c语言·开发语言·嵌入式
Yvonne爱编码1 小时前
JAVA数据结构 DAY3-List接口
java·开发语言·windows·python
一方_self1 小时前
了解和使用python的click命令行cli工具
开发语言·python
南宫码农1 小时前
我的电视 - Android原生电视直播软件 完整使用教程
android·开发语言·windows·电视盒子