Java基础教程19-类和对象

       本文介绍Java中类和对象的概念。实话讲,刚开始接触这些概念,确实很头疼,不好理解。如果你理解了Java的类和对象,那么就基本上学好了Java一半知识。先来理解下什么是对象和什么是类的概念。

1. 什么是类和对象

       每一个Java程序至少有一个类和一个方法。类是Java程序的组织单位,一般一个类下,写多个方法。简单来说,物以类聚,类就是分类,归纳的意思。在Java中处理import语句和package语句,其他的代码行都需要写在类里面。说到类,不得不提对象,Java是纯面向对象编程。什么是对象,在客观世界中的任何东西,特别复杂的问题,我们习惯把这些事物抽象成对象。世间万物皆是对象,这句话听说过吧,哈哈。对象有名字,对象有内部属性和行为描述,也叫方法。在Java程序中类是创建对象的模板,对象是类的实例。不说了,估计你会很绕,烧脑子。实在不行,强记住这句话:在Java程序中类是创建对象的模板,对象是类的实例
2. 如何定义一个类
       我们前面例子,其实都在一直定义类,public class MyClass {} 就是在定义一个名称叫MyClass的类。public表示修饰符,修饰符以后介绍,class是关键字,表示定义的是一个类,class后面跟着的就是类的名称。类里面可以定义多个方法,还有类本身的属性。

3. 看一个具体类的实现

在包lesson下新建两个Class文件,一个叫Student.java,一个叫MyClass.java

3.1 Student.java代码如下

package lessons;

public class Student {
	int id;
	String name;
	int age;
	
	// 这里只写了类属性,没有写类方法。

}
3.2 MyClass.java内容如下

package lessons;

public class MyClass {
	
	public static void main(String[] args) {
		Student Anthony = new Student(); // Anthony 是一个对象或者叫实例
		
		Anthony.id = 1;
		Anthony.name = "Anthony";
		Anthony.age = 18;
		
		System.out.println(Anthony.name + " is " + Anthony.age + " years old.");
		
	}
	
}
运行结果:Anthony is 18  years old.

4. 参数设置和获取调优

       仔细看MyClass.Java中的代码,你会发现,如果别人使用你的代码,很可能你Student里面的属性(id,name,age)被别人修改。为了防止别人修改你的值,我们采用set和get方法去修改上面代码。方法是这样:在Student这个类里面,鼠标选择类属性id,然后点击eclipse上传菜单栏的Source,下一级菜单选择Generate Getters and Setter...,你就会发现Student.java代码变化如下:

package lessons;

public class Student {
	int id;
	String name;
	int age;
	
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	
	// 这里只写了类属性,没有写类方法。

}
然后我们把MyClass.java的用set和get方法,具体代码如下:

package lessons;

public class MyClass {
	
	public static void main(String[] args) {
		Student Anthony = new Student(); // Anthony 是一个对象或者叫实例
		
		Anthony.setId(1);
		Anthony.setName("Anthony");
		Anthony.setAge(18);
		
		System.out.println(Anthony.getName() + " is " + Anthony.getAge() + " years old.");
		
	}
	
}
再次提醒下:
Student Anthony = new Student(); // Anthony 是一个对象或者叫实例
以后会经常这样区去初始化一个对象或者实例,到时候自动化测试中页面对象类的实例化就是这样写,到时候千万不要说自己不能够理解这个代码。



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值