java类和对象
前言
对于初学者而言,面向对象的编程思想往往会产生困扰。我们要做到反复学习,勤思考。
一、类和对象的关系
我们可以理解“类”为建房子的模型,而“对象”则是通过模型建造出来的实体,
下图所示。
类 | 对象 |
---|---|
宠物狗 | 一个叫做“豆丁的中华田园犬”,3岁 |
汽车 | 一个车牌号为京A6666的奔驰,售价50万元 |
二、类的创建
在java中创建类,有固定的编码格式,语法如下:
public class 类名{
//类的属性部分
属性1的数据类型 属性1名称;
属性2的数据类型 属性2名称;
属性3的数据类型 属性3名称;
//类的方法部分
方法1的声明;
方法2的声明;
}
java程序中定义类,需要如下三个部分。
(1)类的名称 使用大驼峰(Upper Camel Case)
(2) 类的属性部分 属性部分的变量,为成员变量,如果没有指定值,则会根据数据类型分配默认值。
(3)类的方法部分
定义汽车类的代码如下:
public class Car{
//定义属性部分
String brand; //品牌
String color; //颜色
int price; //售价
String license;//牌照
//定义方法部分
public void show(){
System.out.println("一辆牌照为"+"license"+"的"+color+"色\""+brand+"\"汽车,"+"售价"+price+"万。");
}
三、对象的创建和使用
类名 对象名 = new 类名();
Car car1 = new Car();
(1) 引用类的属性:
对象名.属性;
(2)引用类的方法:
对象名.方法();
例如:
car1.brand=“红旗”;
car1.show();
例题
修改密码功能,修改之前,验证旧密码通过则可以设置新的密码,最多三次。
(1)while 循环操作的核心代码需要在测试类的main()方法内实现。
(2) 将程序接收新用户的用户名和密码与原有账号和密码进行对比。
1)管理员类
public class Administrator{
String userName = "admin";//管理员账户
String password = "123456";//管理员密码
public void show(){
System.out.println("账号:"+userName+",密码"+password);
}
}
2)修改密码测试类
public class ChangePassword{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
int i = 0;
String name = null;//接手录入的账户
String pwd = null;//接手录入的密码
Administrator admin = new Administrator();//创建管理员对象
System.out.println("===修改管理员密码===");
//修改旧密码
while(i<3){
System.out.print("请输入账户:");
name =input.next();
System.out.print("请输入旧密码:");
pwd=input.next();
//验证旧密码
if(admin.userName.equals(name)&&admin.password.equals(pwd)){
System.out.print("\n请输入新密码:");
admin.password = input.next();//为管理员设置新密码
break;
}else{
i++;//记录循环次数
if(i==3){
break;
}
//提示用户还有几次机会
System.out.println("您输入的信息不正确!还可以尝试"+(3-i)+"次");
}
}
if(i<3){
System.out.println("密码修改成功");
admin.show();//显示管理员信息
}else{
System.out.println("\n您没有权限更新管理员信息");
}
}
}