hello world

十年热恋 提交于 2019-12-18 02:55:37

面向对象

构造方法

特点:

方法名和类名相同,没有返回值

作用:

1:使用new关键字的时候会调用到构造器。本质是在调用构造器。

2:用来初始化对象

注意

无参构造默认存在(隐式存在),但是在定义了有参构造之后必须显式定义无参构造。

类与对象的总结

类是一个模板是抽象的,对象是类的实例。

八大基本数据类型:

Java中的数据类型,分为引用类型和基本数据类型。基本类型又分为8种:

整型:byte,short,int,long

浮点型:float,double

字符型:char

Boolean型:boolean

封装

作用:

高内聚低耦合

1、提高程序的安全性,保护数据

2、隐藏代码的细节

3、统一接口

4、增强了程序的可维护性

继承 (在Java中所有的类都默认继承Object类)

继承的本质是对类进行抽象,从而实现对现实事物更好的建模。

子类(派生类)是父类(基类)的扩展。

子类继承父类,使用关键字extends表示。例如:public class Student extends Person(){...}

子类只能继承一个父类

父类中私有的方法不能被继承

关于super与this的用法

在一个类中,this表示使用当前类的属性,而super则表示使用父类中的属性。

注意:

1、super调用父类的构造方法,必须在构造方法的第一行

2、super只能出现在子类的方法或者构造方法中

3、super和this不能同时调用构造方法

方法的重写

需要有继承关系,子类重写父类的方法

1、方法名必须相同

2、参数列表必须相同

3、修饰符:范围可以扩大单不能缩小,子类不能严于父类。

4、抛出的异常:范围可以缩小但不能扩大;ClassNotFoundException -->Exception

多态

什么是多态?——父类型的引用指向子类型的对象

1、多态是方法的多态,属性没有多态。

2、类之间要有继承关系

3、子类重写父类的方法

抽象类

用abstract修饰的类

  • 用abstract修饰的方法称为抽象方法,抽象方法没有方法体。

  • 抽象类的方法必须由子类实现

  • 抽象类不能被实例化
  • 抽象类中可以有普通方法,但是有抽象方法的类一定是抽象类。(抽象方法必须在抽象类中)

接口todo

作用:

  • 是一个约束

内部类

多线程详解

线程的五大状态

  • 创建状态
  • 就绪状态
  • 阻塞状态
  • 运行状态
  • 死亡状态

1576510555364

注解

元注解:负责注解其它注解的注解

  • @Target 用于描述注解的使用范围(即:被描述的注解可以使用在什么地方。
  • @Retention 表示需要在什么级别保存该注释信息,用于扫描注解的生命周期。(表示我们的注解在什么地方才有效)
    • (SOURCE<CLASS<RUNTIME)
  • @Doucumented 表示该注解将被包含在Javadoc中
  • @Inherited 表示子类可以继承父类中的该注解

自定义注解:@interface

@target({ElementType.METHOD,ElementType.TYPE})//表示我们可以用在哪些地方
@Retention(value=RententionPolicy.RUNTIME)//表示我们的注解在什么地方才有效
@Documented//表示是否将注解生成在JavaDoc中
@Inherited//子类可以继承父类的注解
public @interface MyAnnotation{
    //注解的参数: 参数类型+参数名  ();
    String name() default "zhangsan";
}

反射

反射的优点和缺点

优点:

  • 可以动态创建对象和编译,体现很多的灵活性。

缺点:

  • 对性能有影响。使用反射基本上是一种解释操作,我们可以告诉JVM我们希望做什么并且它满足我们的要求。这类操作总是慢于直接执行相同的操作。
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!