Java语言高级语法
来源:互联网 发布:8080端口到底是是什么 编辑:程序博客网 时间:2024/04/28 20:35
1、java语法规定,当使用public和class这两个关键字修饰一个类时,存放类的文件就必须命名为“此类的名字”+“.java”;java语法还规定,在一个源文件中,必须有且只能有一个public的类。
2、类主体是类名后面那对大括号的内容。类主体中的主要内容就是属性和方法。类主体中也可以什么也没有;类主体中的变量叫做类的属性,同时它也是“类的成员”,所以也叫做成员变量。
3、类时一种抽象,它把一类物体的特征抽象出来,通过适当的数据类型表示,因此可以说类是一种抽象的数据类型;对象是按照类的定义创建出来的实例;
4、Java中的类型只有两种:基本数据类型和类(数组类型也是类,Java平台针对数组类有专门的处理方式。)
5、Java与C的一点不同:C语言可以创建一个基本数据类型的指针或引用,然后让它指向一个基本数据类型。但在Java中,引用只能用在类上。
6、关于类的引用:声明一个类变量,就是创建一个引用。
Car referenceToCarObject; //创建一个引用referenceToCarObject = new Car();//使用引用来创建对象
说明:a.可以让这个引用指向一个Car类的对象;b.它不是Car类的对象,但是可以让它指代一个Car类的对象;c.可以使用它操作它指向的Car类的对象。
7、可以在类中声明一个自己类型的引用。如:
public class Driver {String name;int age;Driver teacher;}注意:不能给teacher属性赋一个新创建的对象,否则程序会陷入一种死循环中,如:
public class Driver {String name;int age;Driver teacher = new Driver();}程序会报错:StackOverflowError。
8、方法是类的功能,类的功能只能通过方法来实现。方法必须是属于某个类的,即方法必须定义在类中。
9、使用return语句可以结束一个方法,在使用一个参数的时候,注意检查参数的合理性!
10、重载是指在一个类中,有两个或多个方法,它们有一样的方法名,但是却有不一样的方法签名(方法签名是由方法名和参数类型决定的,与方法的其他属性无关。注意,返回类型和形参名不是方法签名的一部分!),重载的优势是可以重用方法名。
11、方法中使用到的变量的寻找规律是先找到局部变量,再找到实例变量,如果再没有找到,将会有一个编译错误而无法通过编译。
12、如果使用this关键字访问一个变量,则是访问实例变量而非局部变量。Java平台不会在方法的局部变量中寻找。这点跟this关键字不同。this理解的一个小例子:
public class SimpleClassToShowThis {public int a = 100;public void test(){int a = 50;this.a = a + 5; //a是a=50的这个a,this.a是test()方法外面定义的那个a。System.out.println(a);//这里的a是test()里面定义的a,因此输出a的值为50}}
public class TestThis {public static void main(String[] args){SimpleClassToShowThis simple = new SimpleClassToShowThis();simple.test();System.out.println("a = " + simple.a);//这里simple.a访问的是simple对象的a,即定义在test()方法外的实例变量a;因为this.a = a + 5; 所以,其值为55;}}13、构造方法没有返回值类型(不能使用void),但是构造方法内可以使用return。同时构造方法名必须与类名一样。
14、通过this+构造方法实参,可以在一个构造方法中调用同类的另一个构造方法;同时必须将这个放在构造方法的第一行。如:
public Car() { this("Java","coffee color");}它会在Car类中搜索符合要求的构造方法,然后去执行那个构造方法。其过程,包括寻找方法、实参形参赋值、方法调用后的返回等。
15、static关键字可以用来修饰方法和变量。如果一个变量使用static关键字修饰,那么这个变量就是类范围内的一个属性,所有这个类的对象将共享这个属性,即,创建对象的时候不会创建使用static关键字修饰的变量。使用static修饰的变量叫类变量或静态变量。其实类变量在程序加载的时候创建,先于类的所有对象的创建。使用类变量的时候,不需要使用对象而是可以直接使用类名。
16、使用static修饰的方法叫做类方法或静态方法。static修饰的方法可以通过类名直接调用;类方法中不能够使用this关键字(因为this关键字代表对象,而类方法是类范围内的方法,所以代码内不能使用this关键字去访问变量和方法。);类方法内可以调用类方法和使用类变量;没有使用static修饰的方法可以调用static修饰的方法。
17、创建一个类的对象的过程:首先创建这个类的父类的对象,然后创建这个类的对象。
18、子类唯一没有直接继承父类的就是父类的构造方法。(可以这样理解,构造方法要求方法名与类名相同,之类和父类类名不要求相同,所以子类无法继承父类的构造方法)
19、通过super关键字调用父类的构造方法,只能够在子类的构造方法中使用,同时必须在子类的构造方法中的第一行使用此语法。
20、一个子类的引用可以用来给父类引用赋值,无需进行强制类型转换。即父类的引用可以无条件地指向子类的对象。
21、Java平台执行的规则是:在编译程序的时候,可以调用哪些方法,访问哪些属性,是引用类型决定的;在程序运行的时候,具体访问哪个属性,执行那个方法,是对象的类型决定的。
注:参考《Java入门1·2·3——一个老鸟的Java学习心得》
- Java语言高级语法
- java高级语言特性
- Java 高级语言特性
- C语言高级语法概述笔记
- 【编译原理】高级语言及其语法描述
- JPA学习(四):java持久化查询语言JPQL--高级应用及语法
- java语言语法基础
- Java语言基本语法
- Java语言语法1
- Java语言语法2
- java语言特点,语法
- andriod第二课----java高级语法
- andriod第三课----java高级语法2
- Java语言高级--NIO入门
- java-高级语言的运行机制
- JAVA语言的基本语法
- Java编程语言的语法
- day02 Java语言基础语法
- Apache CXF
- OPENGL|ES 第一天
- 基于STK的反导雷达拦截仿真
- 面向对象软件度量技术的分析与综述----整理
- Linux系列-linux tar命令使用详解
- Java语言高级语法
- android学习_Handler信息的传播机制
- Linux系列-Linux下.tgz、.rpm等软件包的常用安装方法
- 2013年下半年科大讯飞笔试题目
- Android 深入ViewPager补间动画,实现类京东商城首页广告Banner切换效果
- Linux系列-tomcat、jdk安装
- 上传ios应用到AppStore
- HDU 3472 混合图欧拉回路 + 网络流
- N皇后改进、、判重加快(回溯法)