Java 是一种面向对象的语言
在 Java 这门语言体系当中,最基础的部分就是 Java SE 部分,同时它也是 Java 技术基础和核心,在 Java SE 的基础之上,又分为了 Java EE(Java 的企业版),应用于大型企业级应用的开发。Java ME 主要用于嵌入式开发。初学的时候我们都是从 Java SE 开始的。
- JVM 叫 Java 虚拟机,它也是整个 Java 技术的核心。Java 语言的跨平台就多亏了 JVM。
- JDK 叫 Java 开发工具包,没有 JDK 就没有办法对 Java 程序的开发。
- JRE 叫 Java 运行环境,如果我们需要运行一个Java程序,就得安装 JRE。
- JDK、JRE和JVM之间的关系:
有关 Java 的需要注意的几点
* Java 中的语句要以;结尾 。
* 用花括号{}来整合语句,形成程序块。通过程序块,我们可以知道程序的不同部分的范围,比如类从哪里开始,到哪里结束。
* 在 Java 中是区分大小写的,而且还要求首位不能是数字。最重要的是,Java 关键字不能当作 Java 标识符。
在 Java 中,还有一些约定俗成的命名规则
- 类和接口名。每个字的首字母大写,含有大小写。例如,MyClass,HelloWorld,Time 等。
- 方法名。首字符小写,其余的首字母大写,含大小写。尽量少用下划线。例如,myName,setTime 等。这种命名方法叫做驼峰式命名。
- 常量名。基本数据类型的常量名使用全部大写字母,字与字之间用下划线分隔。对象常量可大小混写。例如,SIZE_NAME。
- 变量名。可大小写混写,首字符小写,字间分隔符用字的首字母大写。不用下划线,少用美元符号。给变量命名是尽量做到见名知意。
- 命名过程中尽量做到见名知意,方便后期查看和修改代码,也方便其他人员的阅读。
常量的定义 比如:final int i=0;那么这个i的值便不能被修改。
布尔变量的定义 比如:boolean a = true; true相当于1,false相当于0.
Java 运算符的优先级
数组的定义
语法:
数据类型[ ] 数组名;
或者
数据类型 数组名[ ];
如:
int ages[]; //存放年龄的数组,类型为整型
char symbol[]; //存放符号的数组,类型为字符型
String [] name; //存放名称的数组,类型为字符串型
当我们声明了数组后,需要为数组分配空间,也就是定义多大的数组。
数组名 = new 数据类型 [ 数组长度 ];
如:
int [] ages = {12,18,9,33,45,60}; //声明并初始化了一个数组,它有6个元素
char [] symbol = new char[10] ; //声明并分配了一个长度为10的char型数组
java方法
方法的定义语法:
访问修饰符 返回值类型 方法名(参数列表)
{
方法体
}
在上面的语法说明中:
访问修饰符,代表方法允许被访问的权限范围, 可以是 public、protected、private 甚至可以省略 ,其中 public 表示该方法可以被其他任何代码调用,其他几种修饰符的使用我们会在后面章节中详细讲解。
返回值类型是方法返回值的类型,如果方法不返回任何值,则返回值类型指定为 void (代表无类型);如果方法具有返回值,则需要指定返回值的类型,并且在方法体中使用 return 语句返回值。
方法名是方法的名字,必须使用合法的标识符。
参数列表是传递给方法的参数列表,参数可以有多个,多个参数间以逗号隔开,每个参数由参数类型和参数名组成,以空格隔开。
java类
一段代码:
public class printScore {
public static void main(String[] args) {
// 创建对象,对象名为a
printScore a = new printScore();
int rSum; //设置一个int型变量,用来接收方法的返回值
// 调用方法,传入两门课程的成绩
rSum = a.calcSum(78,99);
System.out.println("总分:"+ rSum);
}
/*
* 功能:计算两门课程考试成绩的总分并输出总分
* 定义一个包含两个参数的方法,用来传入两门课程的成绩
*/
public int calcSum(int a, int b){
int sum= a + b;
return sum;
}
}
其中在一个类中创建新对象的语句为
[类名] [对象名] = new [类名]();
特殊的在类中创建的方法如果和类名相同则称为构造方法或构造函数,用于创建新的对象时初始化操作,如下:
public class People {
//属性(成员变量)有什么
double height; //身高
int age; //年龄
boolean sex; //性别,true为男性,false为女性
//构造函数,初始化了所有属性
public People(double h, int a, boolean s)
{
height = h;
age = a;
sex = s;
}
}
创建对象,调用我们自己定义的有参构造方法
People XiaoMing = new People(168, 21, false);
继承
- 子类重写父类的方法时,与原父类的方法语法需保持一致,比如返回值类型,参数类型及个数,和方法名。
- 继承的初始化顺序是 先父类后子类
- final 修饰类,则该类不允许被继承
- final 修饰方法,则该方法不允许被覆盖(重写)
- final 修饰属性:则该类的属性不会进行隐式的初始化(类的初始化属性必须有值)或在构造方法中赋值(但只能选其一)
多态
- 父类分引用指向子类对象时不可以调用子类独有的方法,只能调用继承或重写的方法
- 引用多态不能使用一个子类的引用去指向父类的对象