1、概念:类(就是创建对象的模板和蓝图,一组类似对象的共同抽象定义)对象(类的实例化结果,实实在在存在的事物)。类是对象的定义,对象的产生离不开类,类存在的目的:就是为了实例化对象。类是静态,对象是动态实例。程序代码操作的是对象,建模得到的是类。对象由方法和属性构成。属性就是变量。
2、定一个类的步骤:a)定义类名;b)编写类的字段代表它的属性;c)编写类的方法。
3、对象的创建与使用
a) 类的创建(类的定义、类的实例化)公式:
数据类型 类名 = new 数据类型();
数据类型 对象名 = new 数据类型();
或者
类 类名 = new 类();
补充:数据类型:基本数据类型和引用数据类型
引用数据类型:类、接口、数组
b) 类的属性与方法的调用
调用:使用的是成员访问符“.”
例子:
数据类型 对象名 = new 数据类型();
对象名.属性;
对象名.方法名();
1、小红养了两只猫,一只叫小黑,今年2岁,黑色,
另一只叫小白,今年5岁,白色。
请编写一个程序,要求当用户输入小猫的名字时,
就显示猫的名字、年龄和颜色。
如果用户输入的小猫名字错误,则显示“小红没有养这只猫”。---------意会知识,代码有待简化。由2来改1代码。
import java.util.Scanner;
public class Cat {
public String name;
public int age;
public String color;
public String toString(){
return "name:"+name+" age:"+age+" color:"+color;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("请输入小猫的名字:");
Scanner input=new Scanner(System.in);
String input_name=input.nextLine();
Cat cat1=new Cat();
cat1.name="小黑";
cat1.age=5;
cat1.color="黑色";
Cat cat2=new Cat();
cat2.name="小白";
cat2.age=3;
cat2.color="白色";
if(input_name.equals(cat1.name)){
System.out.println(cat1.toString());
}else if(input_name.equals(cat2.name)){
System.out.println(cat2.toString());
//对象调用属性:取属性的值
System.out.println(cat2.age);
}else{
System.out.println("小红没有养这样的小猫!");
}
}
}
2、
import java.util.Scanner;
public class Cat {
String name;
int age;
String color;
public Cat(String name,int age,String color){
this.name=name;
this.age=age;
this.color=color;
}
public String toString(){
return "name:"+name+"age:"+age+"color:"+color;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Cat blackCat=new Cat("小黑",2,"黑色");
Cat whiteCat=new Cat("小白",5,"白色");
Scanner scan=new Scanner(System.in);
System.out.println("请输入小猫的名字:");
String CatName=scan.next();
System.out.println("请输入小猫的年龄:");
int CatAge=scan.nextInt();
if(CatName.equals(blackCat.name)&&(CatAge==blackCat.age)){
System.out.println(blackCat.toString());
}else if(CatName.equals(whiteCat.name)&&(CatAge==whiteCat.age)){
System.out.println(whiteCat.toString());
}else{
System.out.println("小红没有养这只猫");
}
} }