面向对象练习(2)

面向对象练习(2)


目录

1.模拟计算器

2.显示信息

3.重载无名粉

4.重载网络信息


1.模拟计算器

        定义计算类:

package dh021;
//简易计算器
public class Calc {
	//两个整数
	public void add(int num1,int num2) {
		int sum = num1 + num2;
		System.out.println(num1+"+"+num2+"="+sum);
	}//两个浮点数相加
	public void add(double num1,double num2) {
		double sum = num1 + num2;
		System.out.println(num1+"+"+num2+"="+sum);
	}//三个浮点数相加
	public void add(double num1,double num2,double num3) {
		double sum = num1 + num2 + num3;
		System.out.println(num1+"+"+num2+"+"+num3+"="+sum);
	}

	
}

        测试:

package dh021;
//测试类
public class TestCalc {
	public static void main(String[] args) {
		Calc calc =new Calc();
		calc.add(5, 5);
		calc.add(1.0, 3.0);
		calc.add(1.0, 3.0, 6.0);
	}
}

2.显示信息

        定义信息类:

package dh021;
//Person类
/**
 * 
 * @author XXX
 * 编写Java程序用于显示人的姓名和年龄。
 定义一个人类Person该类中应该有两个私有属性姓名name和年龄age。
定义构造方法用来初始化数据成员。
再定义显示display方法将姓名和年龄打印出来。
 在main方法中创建人类的实例然后将信息显示
 */
public class Person {
	// 私有name和age
	private String name;
	private int age;
	
	// 构造方法,获得name,age的值。
	public Person(String name,int age) {
		this.name = name;
		this.age = age;
	}

	// 定义所需要的方法
	public void display() {
		
		System.out.println("姓名:"+this.name+"\t年龄:"+this.age);
		
	}
	
	
	
}

        测试:

package dh021;

//测试类
public class TestPerson {
	public static void main(String[] args) {
		Person person = new Person("张三", 18);
		person.display();
	}
}

3.重载无名粉

        定义无名类:

package dh021;

/**
 * 
 * @author XXX 3.构造方法与重载 为“无名的粉”写一个类class WuMingFen 要求: 1.有三个属性 面码:String theMa
 *         粉的分量(两) int quantity 是否带汤 boolean likeSoup 2.写一个构造方法 以便于简化初始化过程 如
 *         WuMingFen f1 = new WuMingFen(“牛肉”,3,true); 3.重载构造方法 使得初始化过程可以多样化
 *         WuMingFen f2 = new WuMingFen(“牛肉”,2); 4.如何使得下列语句构造出来的粉对象是酸辣面码、2两、带汤的
 *         WuMingFen f3 = new WuMingFen(); 5.写一个普通方法 check() 用于查看粉是否符合要求。即
 *         将对象的三个属性打印在控制台上
 * 
 */
//WuMingFen类
public class WuMingFen {
	String theMa;//面码
	int quantity;//粉的分量(两)
	boolean likeSoup;//是否带汤 
	
//	2.写一个构造方法 以便于简化初始化过程 如 WuMingFen f1 = new WuMingFen(“牛肉”,3,true); 
	public WuMingFen(String theMa,int quantity,boolean likeSoup) {
		this.theMa = theMa;
		this.quantity =quantity;
		this.likeSoup = likeSoup;
	}

//	3.重载构造方法 使得初始化过程可以多样化 WuMingFen f2 = new WuMingFen(“牛肉”,2); 
	
	public WuMingFen(String theMa,int quantity) {
		this.theMa = theMa;
		this.quantity =quantity;
	}
	
//	4.如何使得下列语句构造出来的粉对象是,酸辣面码、2两、带汤的 WuMingFen f3 = new WuMingFen(); 
	public WuMingFen() {
		 this.theMa="酸辣面码";//面码
		this.quantity = 2;//粉的分量(两)
		this.likeSoup = true;//是否带汤 
	
	}
//	5.写一个普通方法 check() 用于查看粉是否符合要求。即 将对象的三个属性打印在控制台上
	public void check() {
		System.out.println(this.theMa+"\t"+this.quantity+"\t"+this.likeSoup);
	}
	
	
	
	
}

        测试:

package dh021;

public class TestWuMingFen {

	public static void main(String[] args) {


		WuMingFen wmf = new WuMingFen("牛肉",3,true);
		wmf.check();
		WuMingFen wmf1 = new WuMingFen("牛肉",3);
		wmf1.check();
		WuMingFen wmf2Fen = new WuMingFen();
		wmf2Fen.check();
	}

}

4.重载网络信息

        定义网络类:

package dh021;

/**
 * 
 * @author XXX 4.定义一个网络用户类 要处理的信息有 用户ID、用户密码、email地址。 在建立类的实例时
 *         把以上三个信息都作为构造函数的参数输入 其中用户ID和用户密码时必须的 缺省的email地址是用户ID加上字符串”

 */
public class Internet {

	String ID;// ID
	int pwd;// 密码
	String email;// email

	public Internet(String ID, int pwd, String email) {
		this.ID = ID;
		this.pwd = pwd;
		this.email = email + "@.com";
	}

	public Internet(String ID, int pwd) {
		this.ID = ID;
		this.pwd = pwd;
	}

	public Internet() {
		this("xxx", 999);
		this.email = this.ID + "@.com";
	}

	// show
	public void show() {
		System.out.println("用户:" + this.ID + " " + "密码:" + this.pwd + " " + "email:" + this.email);
	}

}

        测试:

package dh021;

//测试类
public class TestInternet {
	public static void main(String[] args) {
		// 实例化
		Internet internet = new Internet("yjz", 888, "这是一个测试");
		internet.show();
		//
		Internet internet1 = new Internet();
		internet1.show();
	}
}

你可能感兴趣的:(面向对象,java,开发语言)