Java标识符,关键字,数据类型

Java的标识符

标识符是用来给类、对象、方法、变量、接口和自定义数据类型命名的。

给类、属性和方法命名的时候要遵守以下规则(命名规则):

1标识符可以由字母、数字、“$”和“_”组成,但是不能以数字开头

2不能使用Java中的关键字和保留字来给类、属性、方法命名

附加规范:

1标识符要能体现类、属性、方法的作用

2标识符对大小写敏感

3标识符可以使用汉字,但是不提倡使用

4自定义标识符尽量不要与JDK类库中的类重名

 

Java关键字、保留字

Java一些赋以特定的含义、并用做专门用途的单词称为关键字(keyword

48个关键字,2个保留字

Java关键字

访问权限修饰符  3

private             protected                        public  

数据类型             8

byte            short         int           long           float           double            char              boolean

流程控制           11

if,else              switch,case,break,continue,default               for             do,while         return 

异常处理            5

try,      catch,           throw(抛出一个异常对象) ,             throws(声明一个异常可能被抛出) ,           finally

类,接口,包         15

class     interface     abstract     static      final      extends     implements     native     new     super      this     void     null     import      package

线程                     2

synchronized(线程同步)                                 

 volatile(标记字段可能会被多个线程同时访问,而不做同步)

其他                     4

transient(修饰不要序列化的字段)               

 instanceof(测试一个对象是否是某个类的实例)   assert(断言条件是否满足)           

strictfp(浮点数比较使用严格的规则) 

 super关键字:

用在子类中代表父类

1, 用在子类的构造器的第一行,通过“super([args])”形式调用父类中的构造器

2, 用在子类的构造器和方法中,通过“super.method([args])”形式调用父类中的方法

// 子类对象必须调用父类的构造器

//实际上因为只有Object类能创建对象,而Object是所有类的超父类,Object只有一个无参构造器

//在子类构造器中没有写super(),则默认调用无参构造器,(使用super关键字)


 this关键字:

this用来指代本类

1, 用在构造器的第一行,通过“this([args])”来调用本类的其他构造器

2, this用在构造器中还可以指代刚刚创建好的对象

3, 用在普通方法中,用来表示调用此方法的对象


static关键字:

a) static可以用过来修饰属性和方法,表此属性和方法与类相关

1> 静态的属性和方法在类加载的时候就会被加载同时分配内存空间

2> 静态的属性和方法可以直接通过“类名.attr/method”来调用

b) static可以用来修饰代码块 → 静态代码块

静态代码块只在类首次被加载的时候执行一次,我们可以用来完成一些一次性的初始化工作



单例模式:让一个类只产生一个实例

public class Dog {

private static Dog dog = null;                        

private Dog(){}

public static Dog getDog(){

if(dog == null){

dog = new Dog();

}

return dog;

}

}

public class Cat {

private static Cat c = new Cat();                                

private Cat(){

}

public static Cat getCat(){

return c;

}

}


final关键字:

可以用来修饰类、方法和属性

1> 用final修饰的类,表示此类不能再被继承

2> 用final修饰的属性,表示此属性为常量,其值不能被改变

3> 用final修饰的方法,表示此方法不能被子类重写 

Java保留字

const     goto

 

Java数据类型

 

 

  特殊字符

转义符

含义

Unicode

\b

退格(backspace

\u0008

\n

换行

\u000a

\r

回车

\u000d

\t

制表符(tab

\u0009

\“

双引号

\u0022

\‘

单引号

\u0027

\\

反斜杠

\u005c


简单类型数据间的转换

 

成员变量和局部变量

成员变量

局部变量

直接定义在类中的变量

定义在类中其他代码块(匿名块,静态块,方法)中的变量

可以添加访问权限修饰符

不能使用访问权限修饰符

可以声明为static

不能声明为static

成员变量声明之后无需初始化可以直接使用

使用之前必须初始化

对于成员变量而言,如果未经初始化,则系统或默认的赋予初始值:

如果成员变量是数值类型,则默认值为0或者0.0

如果成员变量是boolean类型,则默认值为false

如果成员变量是char类型,则默认值为’\u0000’

如果成员变量是引用类型,则默认值为null


方法的重载与重写

方法的重载(overload):当类中的方法名相同时,称为方法的重载

方法的重写/方法覆盖(override):

当子类从父类中继承的方法不能满足子类需要的时候,我们可以在子类中对其进行改写,这一个过程称之为方法的重写。当子类对父类的方法进行改写子后,子类对象调用是改写后的方法。


                             

方法的重写                                                             

方法的重载

定义                      

在子类中对从父类继承的方法进行改写

在同一个类中定义多个方法名相同的方法

涉及的类

父类和子类

本类

限制 

方法名      

要和父类相同

多个方法的方法名相同

参数列表

要和父类方法的参数列表相同

多个方法的参数列表不能相同

返回类型

要和父类方法的返回类型相同

无限制

访问权限

不能使用比父类更为严格的访问权限

无限制

 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值