概述
一、8中基本类型所占字节数
Java中有八种基本数据类型,分别为:byte、short、int、long、float、double、char、boolean。
这八种基本类型都有对应的包装类,分别为:Byte、Short、Integer、Long、Float、Double、Character、Boolean。
在Java中整型、实型、字符型被视为简单数据类型,这些类型由低级到高级分别为:
(byte,short,char)--int--long--float--double
注意,整数比浮点数低级。低级到高级可以自动转换。而高级到低级需要用代码强制转换,不强转会编译错误。
相关java题:
【习题】
l 一个函数定义的返回值是float,它不能在return语句中返回的值的类型是( )
A.char B.float C.long D.double
答案:D
double比float高级,long比float低级
二、位、字节、字的概念
1.位:"位(bit)"是电子计算机中最小的数据单位。每一位的状态只能是0或1。
2.字节:8个二进制位构成1个"字节(Byte)",它是存储空间的基本计量单位。
1个字节可以储存1个英文字母或者半个汉字,换句话说,1个汉字占据2个字节的存储空间。
3.字:"字"由若干个字节构成,字的位数叫做字长,不同档次的机器有不同的字长。
例如一台8位机,它的1个字就等于1个字节,字长为8位。如果是一台16位机,那么,它的1个字就由2个字节构成,字长为16位。字是计算机进行数据处理和运算的单位。
4.KB:K在二进制中表示1024,也就是2的10次 方。1KB表示1K个Byte,也就是1024个字节。
三、switch中 表达式支持的数据类型
语法格式:
switch(expression){
case value :
//语句
break; //可选
case value :
//语句
break; //可选
//你可以有任意数量的case语句
default : //可选
//语句
}
基本数据类型:byte、short、char、int(对应的包装类型也可以Byte、Short、Character、Integer)
枚举类型:Enum
字符串类型:String (jdk7+)
使用 switch case 语句也有以下几点需要注意。
-
case 里面必须跟 break,不然程序会一个个 case 执行下去,直到最后一个 break 的 case 或者 default 出现。
-
case 条件里面只能是常量或者字面常量。
-
default 语句可有可无,最多只能有一个。
-
default 位置可以任意,一般放在最后。
【习题】
1 byte可以作为switch的表达式吗?long可以作为switch的表达式吗?String可以作为switch的表达式吗?
答:基本数据类型可以接收byte,short,char,int,引用数据类型可以接收枚举(JDK1.5)String字符串(JDK1.7+)
四、java虚拟机
1、一次编译,到处执行(跨平台性)
2、JVM本身不是跨平台的
3、不同的平台有不同的虚拟机
六、类和对象之间的关系
类与对象的关系:类是对象的模板、是概念、是规范。类是具有相同属性和行为的对象抽象。对象是类的具体实例。
类的局部变量和成员变量的区别:局部变量必须初始化才能使用;成员变量在定义的时候可以初始化,没有初始化也可以使用,java会使用默认值对其初始化。如下:
byte:0 short:0 char:'u0000'(什么都不输出) int:0 long:0 float:0.0f(在java测试输出是0.0) double:0.0d(在java测试输出是0.0) boolean:false 其中引用类型默认值:null
构造方法的作用:用于给新对象分配实体(内存)。命名:名字必须与所在类名完全相同。
并且构造方法没有返回值,也不能有返回值;必须和new关键字一起使用。当一个类没有定义构造方法时,编译器会为其增加一个默认无参构造方法。
方法的参数传递:基本类型传递的是该值本身(基本实参---->基本形参);引用类型传递的是对象的引用,而不是对象本身(引用型实参--->引用型形参,实参把引用给形参,实参和形参都指向同一实体,如果改变形参所引用的实体,原变量(实参)会发生相同的变化,因为指向的是内存中的同一实体(实体又叫对象实例))。
七、封装:
封装的目的:使用者必须通过类的外部接口访问类中的数据;隐藏内部实施细节,保护数据不收破坏;增强代码的可维护性。
访问修饰符:public(公有类,所有类都可使用)、default(友好类,只有同一个包下的类能使用)、protected(同一个包下的类及其不同包下其子类可以使用)、private(私有类,只能在本类内部使用)。
类的修饰符只有public,不能使用protected、private、来修饰类。当一个.java文件里面有多个class结构时,只能有一个public,其他不加访问修饰符。
八、继承:
1、子类继承父类的哪些成员:1、当子类和父类在同一个包中,子类会继承父类中不是private修饰的变量和方法,并且访问权限不变。2、当子类和父类不在同一个包中,子类会继承父类中的受保护(protected)成员和公有(public)成员,不能继承友好(default)和私有(private)成员。
2、什么叫对象的上转型:将子类对象的引用赋值给父类对象。
九、多态
定义:程序中多个名字相同的方法共存的现象。
分类:1、重载:一个类中存在多个同名方法。方法名字相同,形式参数(参数的类型和个数)不同;与返回值类型是否相同没关系。2、重写:子类覆盖父类的同名方法。返回值类型、方法名字和形式参数必须相同。
十、abstract、final关键字
abstract:抽象类的目的就是不能具体描述一个对象,所以抽象类不能被实例化。抽象类中也可以有属性(必须是非抽象的)、普通方法、抽象方法,但是抽象类就是为了让子类实现抽象类的抽象方法,所以抽象类都会有抽象方法,对于继承抽象类的子类要么实现所有的抽象方法,要么自身也声明为abstract类型。反过来有抽象方法的类一定是抽象类。
final(最终的、不变的):修饰类、方法、变量,final修饰的类不能被继承,修饰的方法不能被修改。一句话final修饰的不能被继承、不能被修改。
abstract和final不能同时使用,对于类和方法,abstract就是为了让子类去继承和修改(重写),而final是为了不让继承和修改(重写),两者是互斥关系。对于变量,abstract不能修饰变量,而final修饰变量表示该变量不能被修改。因而也不能同时使用。
一句话abstract、final不能共生(一山不容二虎、有我没你,有你没我)
十一、接口
接口是一种特殊的抽象类,这种抽象类中只包含public static final常量和public abstract方法。
接口的多态性:实现接口的多个类中,同一实现方法可以有不同实现。
接口和抽象类比较:相同点:都不能被实例化;访问权限只能有关键字public修饰。
不同点:抽象类不全是常量,接口中全是常量;抽象类不全是抽象方法,接口必须是抽象方法;抽象类含有 构造函数,接口不含有构造函数;抽象类单继承,接口多继承。
类和接口的继承特性:一个类继承一个父类;一个接口继承多个接口;一个类实现多个接口。
接口声明的接口变量可以作为引用类型的变量来使用。接口回调:如果某一个类实现了某接口,该类创建的对象可以为接口声明的接口变量赋值。接口变量被赋值之后就可以调用被类实现的接口中的方法。
异常类的层次
异常处理机制
抛出:try语句产生一个异常对象并把它抛出。
捕获:catch语句捕获异常对象。
异常抛出
程序出错,JVM自动抛出;程序员使用throw认为抛出。
如果一个方法只抛出而不处理异常,需要使用throws语句声明抛出异常类型。可抛出多种异常类型,用","隔开。
最后
以上就是无聊月亮为你收集整理的java基础复习的全部内容,希望文章能够帮你解决java基础复习所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复