Java oop 的题与代码3(老师版,含注释):用switch(s)做简易版的计算器,main()方法

//简易版的计算器
package b;
import java.util.Scanner;
public class d1 {
public static void main(String[] args) {
Scanner s=new Scanner(System.in);
System.out.println("请输入第一个数字");
int num1=s.nextInt();
System.out.println("请输入第二个数字");
int num2=s.nextInt();
System.out.println("请输入你要执行的操作:+、-、*、/、%");
String s1=s.next();
z.jisuanqi1(num1, num2,s1);
}
private void jisuanqi1(int a,int b,String s){
switch(s){
case "+":
System.out.println(a+"+"+b+"="+(a+b));break;
case "-":
System.out.println(a+"-"+b+"="+(a-b));break;
case "*":
System.out.println(a+"*"+b+"="+(a*b));break;
case "/":
System.out.println(a+"/"+b+"="+(a/b));break;
case "%":
System.out.println(a+"%"+b+"="+(a%b));break;
}
}
}
注释:
/*在Java语言中,main()方法是Java应用程序的入口方法,也就是说,程序在运行的时候,第一个执行的方法就是main()方法,main()方法上面的class是用于辅助main()方法,这个方法和其他的方法有很大的不同,比如方法的名字必须是main,方法必须是public static void 类型的,方法必须接收一个字符串数组的参数等等。
TODO Auto-generated method stub(这是Eclipse的集成开发环境自动生成的,起个提示作用)
根据d1的构造方法来。如果d1的构造方法中需要传入参数,则括号中写上参数就好。比如 public d1(){}//构造方法中无内容,则像d1 D1=new d1()这样写。public d1(int i,String s){}//则写成d1 D1=new d1(1,"s");
private是私有的意思. // 比如 private class Demo{ //这样的话,Demo类就是私有的了. // 请注意 类是不能用private修饰的, // 当类被修饰成private没有任何意思. // 因为外部任何对象都访问不到Demo类了. private String str; //这样的话 str属性就私有的了 //外部类就访问不到这个属性了 private void hello(){ //这样的话外部类就访问不到hello()方法了 //比如你肯定希望你有些私有的东西 //用常人的思想去理解java oop } } //用private关键字:使得你的程序更安全 //变量一般都是用private申明 //然后再本类通过 set get 方法控制该属性
this. 是为了区分调用的是哪个属性(属性有:name 等变量名)
()里面有时是为了传具体数据
static 用了static后就不必示例化,直接调用,可以被所有成员调用,比如在class dog{public static int count =0。}中的值0,可以直接在main()函数中不调用就打印出来。在成员变量前加static关键字,可以将其声明为静态成员变量
所有对象共享该静态变量
静态成员变量的作用域只在类内部,但其生命周期却贯穿整个程序
访问静态成员变量的语法:
类名.成员变量 */
main()主函数是创建在大的class类里面的比如person class{}里面,,只要main()主函数是创建在大的class类里面,那么写在前面等处也无妨,毕竟是先执行主函数,也可以按习惯来,有些人习惯写后面或main()与大的class类不写在同一个界面,看起来不乱,且感觉代码不太多。以下是例子:
1.
package b;
public class person {
public static void main(String[] args) {
person p1 = new person("刘备", "男", 22);
System.out.println("姓名为" + p1.getName() + "性别为" + p1.getSex() + "年龄为"
+ p1.getName());
person p2 = new person("张飞", "男", 22);
person p3 = new person("关羽", "男", 22);
person z[] = new person[3];
z[0] = p1;
z[1] = p2;
z[2] = p3;
for (int i = 0; i < z.length; i++) {
System.out.println(z[i].toString());
System.out.println("姓名为" + z[i].getName() + "性别为" + z[i].getSex()
+ "年龄为" + z[i].getAge());
}
}
private String Name;
private String Sex;
private int Age;
public person(String Name, String Sex, int Age) {
// TODO Auto-generated constructor stub
this.Name=Name;
this.Sex=Sex;
this.Age=Age;
}
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
public String getSex() {
return Sex;
}
public void setSex(String sex) {
Sex = sex;
}
public int getAge() {
return Age;
}
public void setAge(int age) {
Age = age;
}
}
2.
package b;
public class person {
private String Name;
private String Sex;
private int Age;
public person(String Name, String Sex, int Age) {
// TODO Auto-generated constructor stub
this.Name=Name;
this.Sex=Sex;
this.Age=Age;
}
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
public String getSex() {
return Sex;
}
public void setSex(String sex) {
Sex = sex;
}
public int getAge() {
return Age;
}
public void setAge(int age) {
Age = age;
}
public static void main(String[] args) {
person p1 = new person("刘备", "男", 22);
System.out.println("姓名为" + p1.getName() + "性别为" + p1.getSex() + "年龄为"
+ p1.getName());
person p2 = new person("张飞", "男", 22);
person p3 = new person("关羽", "男", 22);
person z[] = new person[3];
z[0] = p1;
z[1] = p2;
z[2] = p3;
for (int i = 0; i < z.length; i++) {
System.out.println(z[i].toString());//z[i].toString()或z[i]可以访问地址
System.out.println("姓名为" + z[i].getName() + "性别为" + z[i].getSex()
+ "年龄为" + z[i].getAge());
}
}
}