java基础知识点

1. 数据类型相关:

  1. 默认小数为 double 类型,后面也可以加 D 或 d,但这纯属多此一举,如:1.0d,但因为是默认所以可以不加直接写出1.0 小数,如果要指明是float,须在后面加f ,如:1.0f
    1. byte、short、char类型混合运算时,先各自转换成int类型再做运算。
      多种数据类型混合运算时,各自先转换成容量最大的那一种再做运算。
    2. 强制类型转化:大容量赋值给小容量
      注:long转float不需要强制类型转换(虽然long的字节数看起来比float多,但是取值范围反而比float小),byte转char需要强制类型转换(可能因为char是无符号类型,byte是有符号的)
    3. 自动类型转换,小容量自动赋值给大容量。容量从小到大排序为:byte<short(char)<int<long<float<double,其中short和char都占用两个字节,但是char可以表示更大的正整数。
      boolean类型不能转换
      在这里插入图片描述
  2. long类型和int类型做相关运算会转换成float类型。

2. 命名规则:

  1. java语言中规定标识符:
    由大小写字母、数字、下划线、和美元符号组成,但不能以数字开头。标识符不能使用java中的关键字。
  2. 包的名称由一个小写字母序列组成。
  3. 类的名称由大写字母开头,其他字母都由小写的单词组成。
  4. 类的实例的名称由一个小写字母开头,后面的单词由大写字母开头。

3. 静态:

  1. 静态方法内不能使用this关键字,this是引用对象,而静态方法是类的方法。
  2. 静态方法不占用对象的内存空间,而非静态方法占有对象的内容空间。
  3. 构造方法:不能重写但是可以重载,因为构造方法不能被继承。
  4. 只能在构造方法中使用this调用其他的构造方法,不能在成员方法中使用。
  5. 在构造方法中,使用this调用构造方法的语句必须是该方法的第一条执行语句,且只能出现一次。

4.final关键字:

  1. final修饰的类不能被继承。
  2. final修饰的方法不能被子类重写。
  3. final修饰的变量是常量,只能被赋值1次(如果修饰的是成员变量,必须在声明的同时进行赋值;如果修饰的是局部变量,则可以先声明,在进行赋值,但也只能赋值一次。)

5.抽象和接口:

抽象类:

  1. abstract class定义,里面可以有普通方法可以有抽象方法。
  2. 不能创建实例对象,所有抽象方法必须由实现类(子类)里实现,如果子类没有实现抽象类的所有方法,则这个子类也是抽象类。
  3. 由2可知,抽象类不可以有抽象构造方法和抽象静态方法,但可以有普通构造方法和普通静态方法。

接口:

  1. 是特殊的抽象类,其中所有方法都是抽象方法。
  2. 所有的方法默认用public abstract修饰,所有的变量默认用public static final修饰
  3. 不可以有构造方法和静态方法,不能有普通变量
  4. jdk8之后,接口中可以实现默认方法和静态方法。jdk9之后,接口中可以实现私有方法。

一个类可以实现多个接口,但只能继承一个抽象类。

6.成员变量和局部变量:

成员变量:

  1. 分为实例变量和静态变量(类变量),区别是是否有static修饰。
  2. 不需要显式的初始化赋值

局部变量:

  1. 必须要初始化。
  2. 当代码执行到该变量被赋值的代码时局部变量才会被创建
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值