1.Java作为一种面向对象语言,支持以下基本概念:
(1)多态
(2)继承
(3)封装
(4)抽象
(5)类
1.类是一个模板,描述一类对象的行为和状态
Java中的类可以看成是创建java对象的模板,简单的举例对类的定义
public class Dog{
String breed;
int age;
String color;
void barking(){
}
void hungry(){ void:标记不返回任何值
}
void sleeping(){
}
}
2.一个类可以包含以下类型变量:
(1)局部变量:在方法的,构造方法或者语句模块定义的变量被成为局部变量,变量声明和初始化都是在方法中,
方法结束后,变量就会自动销毁
(2)成员变量:成员变量是定义在类中,方法体之外的变量,这种变量在创建对象的时候实例化,成员变量可以被
类中方法、构造方法和特定类的语句块访问
(3)类变量: 类变量也声明在类中,方法体之外,但是必须声明static类型
总结: 一个类可以拥有多个方法,在上面的例子中:barking()、hungry()和sleeping()都是Dog类的方法
(6)对象
对象是类的一个实例,有状态和行为,
举例:一条小狗是一个对象,
状态有颜色,名字,品种,
行为:叫,吃等
Java的对象也有状态和行为,软件对象的状态就是属性,行为是通过方法体现 ,
在软件开发中,方法操作对象内部状态的改变,对象的相互调用也是通过方法来完成
(7)实例
(8)方法
(9)消息解析
二、构造方法
每个类都有构造方法,如果没有显示地为类定义构造方法,Java编译器会为该类提供一个默认的构造方法,在创建一个对象的
时候,至少要调用一个构造方法,构造方法的名称必须与类同名,一个类可以有多个构造方法
例子:
public class Puppy{ 类
public Puppy(){ 构造方法
}
public Puppy( String name ){
//这个构造器仅有一个参数:name
}
}
三、创建对象
1.对象是根据类创建的,在Java中,使用new关键字来创建一个新的对象,创建对象需要三步
(1).声明:声明是一个对象,包括对象名字和对象类型
(2).实例化:使用关键字new创建一个对象
(3).初始化:使用new创建对象时,会调用构造方法初始化对象
例子:
public class Puppy{
public Puppy (String name){
System.out.printIn("Passed Name is :" + name );
}
public static void main(String []args){
//创建一个新的Puppy对象
Puppy myPuppy = new Puppy("tonny");
}
2.访问实例变量和方法
通过已创建的对象来访问成员变量和成员方法,如下所示:
实例化对象:
ObjectReference = new Constructor()
访问其中的变量
ObjectReference.variableName;
访问类中的方法
3.实例
如何访问实例变量和调用成员方法
public class Puppy{
int puppyAge;
public Puppy(String name){
System.out.printIn("Passed Name is : "+ name)
}
public void setAge ( int age ){
puppyAge = age;
}
public int getAge ( ){
System.out.printIn("Puppy' age is :"+ puppyAge);
return puppyAge;
}
public static void main(String []args){
//创建对像
Puppy myPuppy = new Puppy( "tommy" );
//通过方法来设定age
myPuppy.setAge(2);
//调用另一个方法获取age
myPuppy.getAge();
//也可以像下面这样访问成员变量
System.out.printIn("Variable Value : " + myPuppy.puppyAge);
}
}
ObjectReference.MethodName();
4.Java包、Import语句
例子:
在该例子中,我们创建两个类:Employee和EmployeeTest。
首先打开文本编辑器,把下面的代码粘贴进去。注意将文件保存为Employee.java。
Employee类有四个成员变量:name、age、designation和salary。该类显式声明了一个构造方法,该方法只有一个参数。
import java.jo.*;
public class Employee{
String name;
int age;
String desigination;
double salary;
//Employee 类的构造器
public Employee( String name ){
this.namr = name;
}
//设置designation的值
public void empDesignation ( String empDesig){
desigination = empDesig;
}
//设置salary的值
public void empSalary( double empSalary ){
salary = empSalary;
}
//打印信息
public void printEmployee(){
System.out.println("Name:"+ name );
System.out.println("Age:" + age );
System.out.println("Designation:" + designation );
System.out.println("Salary:" + salary);
}
}
程序都是从main方法执行,为了能够运行这个程序,必须包含main方法并且创建一个实例对象,
下面给出EmpoyeeTest类,这个类实例化2个Employee ,并且调用方法设置变量的值。
import java.jo.*;
public class EmployeeTest{
public static void main( String args[]){
//使用构造器创建连个对象
Employee empOne = new Employee ("James Smith");
Employee empTwo = new Employee ( "Mary Anne");
//调用这两个对象的成员方法
empOne.empAge(26);
empOne.empDesignation("Senior Software Engineer");
empOne.empSalary(1000);
empOne.printEmployee();
empTwo.empAge(21);
empTwo.empDesignation("Software Engineer");
empTwo.empSalary(500);
empTwo.printEmployee();
}
}