Java类与对象规则,设计一个汽车类并带上颜色车牌等属性
在学习Java类与对象前,我们要先学会创建包(Package),后期代码量多,有包的话方便管理,这样是一种良好抒写代码的习惯。
首先我们先创建一个项目,包的创建格式是”xx.xx.xx···”名字任意最好和项目有关联,方便查找。我们先创建一个”com.iotword.car”的包,这个包是拿来放我们的类,然后再创建一个”com.iotword.test”包,里面是存放测试类,具体创建的步骤如下图所示:
Java抒写程序中几乎都在使用对象,要产生对象必须要定义类(class),如果用简单的话语来阐述,类就是模板,对象就是通过模板实例化产生的。用今天要展示的例子来车来解释,车就是一个类,奔驰就是一个对象,宝马也是一个对象,保时捷也是一个对象。他们都是车,但是拥有不同的特点。下面通过代码展示来区分类和对象之间关系。
注:Car这个类是存放在com.iotword.car中,Test类是测试类,存放在com.iotword.test中
package com.iotword.car; public class Car { public String name; //车的名字 public String color; //车的颜色 public int number; //车牌号 public void show() { System.out.println("车名:" + name); System.out.println("车颜色:" + color); System.out.println("车牌:" + number); System.out.println(); } }
上面我们已经创建好了类和类的属性 ,类中是可以有属于它自己的方法,我们自己抒写的方法。
比如:定义一个打印车颜色、车名称,车牌号的方法,先定义一个打印车颜色、车名称,车牌号名为show()的方法 ,public就是公共的意思,这样别的类是可以调用的,void是空的意思, 返回值类型,show()方法是一个返回值为空的方法
package com.iotword.test; // 注意:当使用包的管理类时,跨包调用别的类一定要声明,不然编译报错 //意思就是Test调用的是"com.iotword.car"包中的Car类 import com.iotword.car.Car; public class Test { public static void main(String[] args) { //实例化对象就必须在主函数中实现,也就是main()函数中 //实例化对象 * one是对象名称 Car one = new Car(); //实例化Car类型名为one的对象 one.name = "日产 GTR"; one.color = "黑色"; one.number = 666; one.show(); } }
我们在Test还可以实例化更多的对象,下面只展示实例话3个对象的代码:
package com.iotword.test; //注意:当使用包的管理类时,跨包调用别的类一定要声明,不然编译报错 //意思就是Test调用的是"com.iotword.car"包中的Car类 import com.iotword.car.Car; public class Test { public static void main(String[] args) { //实例化对象就必须在主函数中实现,也就是main()函数中 //实例化对象 one是对象名称 Car one = new Car(); //实例化Car类型名为one的对象 one.name = "日产 GTR"; one.color = "黑色"; one.number = 666; one.show(); /** * 实例化对象 * two是对象名称 */ Car two = new Car(); //实例化Car类型名为two的对象 two.name = "保时捷 918"; two.color = "白色"; two.number = 777; two.show(); /** * 实例化对象 * three是对象名称 */ Car three = new Car(); //实例化Car类型名为three的对象 three.name = "迈凯伦 P1"; three.color = "蓝色"; three.number = 888; three.show(); } }
我们会发现我们在实例化一个对象的时候,就用了5行代码,而且代码抒写方面也是不方便后期修改,这时候我们就要考虑去优化代码。我们只要在把Car类中的show()改成代参的方法——show(String name,String color,int number)。下面用代码展示:
调用show()方法的时候,我们要传入参数,千万不能把传入的顺序搞错
package com.iotword.car; public class Car { //注意:定义类的时候是不能拥有main()方法的 ////也就是不用拥有这句话 public static void main(String[] args) ////既然作为车这个类,我们就要定义车应有的属性 public String name; //车的名字 public String color; //车的颜色 public int number; //车牌号 public void show(String name, String color, int number) { System.out.println("车名:" + name); System.out.println("车颜色:" + color); System.out.println("车牌:" + number); System.out.println(); } }
注意:当使用包的管理类时,跨包调用别的类一定要声明,不然编译报错 * 意思就是Test调用的是”com.iotword.car”包中的Car类
package com.iotword.test; import com.iotword.car.Car; public class Test { public static void main(String[] args) { Car one = new Car(); //实例化Car类型名为one的对象 one.show("帕加尼", "灰色", 111); Car two = new Car(); //实例化Car类型名为two的对象 two.show("柯尼塞格one:1", "黑色", 150); Car three = new Car(); //实例化Car类型名为three的对象 three.show("布加迪威龙", "红色", 264); } }