面向对象基础
1 package com.unit5.pojo; 2 3 public class Dog { 4 //定义类的属性 5 String name; 6 String color; 7 int age; 8 9 //定义构造方法 10 public Dog(String name,String color,int age) { 11 // this(); //手动调用默认无参构造方法 12 System.out.println("3个参数的构造方法被调用了!"); 13 //构造方法的作用是为对象的属性赋值 14 this.name=name; 15 this.color=color; 16 this.age=age; 17 } 18 19 public Dog(String a) { 20 System.out.println("1个参数的构造方法被调用了!"); 21 this.name=a; 22 } 23 24 public Dog() { 25 System.out.println("无参构造方法被调用了!"); 26 // TODO Auto-generated constructor stub 27 } 28 29 public void getSelf() { 30 System.out.println(this); 31 } 32 33 //定义类的方法 34 public void eat() { 35 System.out.println("小狗正在吃饭"); 36 } 37 38 public void run() { 39 System.out.println("小狗正在快跑"); 40 } 41 42 43 public static void main(String[] args) { 44 45 Dog dog3=new Dog(); 46 Dog dog4=new Dog("jack"); 47 Dog dog2=new Dog("jack","white",5); 48 // System.out.println(dog2); 49 // dog2.getSelf(); 50 51 52 // System.out.println(dog2.name); 53 // System.out.println(dog2.color); 54 // System.out.println(dog2.age); 55 56 // //创建一个对象 :对象实例化 57 // Dog dog1=new Dog(); 58 // 59 // //给对象的属性赋值 对象名.属性名 60 // dog1.name="joe"; 61 // dog1.color="black"; 62 // dog1.age=4; 63 // 64 // System.out.println(dog1.name); 65 // System.out.println(dog1.color); 66 // System.out.println(dog1.age); 67 // 68 // //调用方法 对象名.方法名() 69 // dog1.eat(); 70 // dog1.run(); 71 72 } 73 74 }
1 package com.unit5.pojo; 2 3 public class Addnum { 4 //方法重载 5 public int add(int a,int b) { 6 int s=a+b; 7 return s; 8 9 } 10 11 public int add(int a,int b,int c) { 12 int s=a+b+c; 13 return s; 14 } 15 16 public int add(int a,int b,int c,int d) { 17 int s=a+b+c+d; 18 return s; 19 } 20 21 public static void main(String[] args) { 22 Addnum ss=new Addnum(); 23 System.out.println(ss.add(10, 20)); 24 System.out.println(ss.add(10, 20,30)); 25 System.out.println(ss.add(10, 20,30,40)); 26 27 28 } 29 30 }
1 package com.unit5.pojo; 2 3 public class Cat { 4 //static关键字 5 6 //定义类的属性 7 String name; 8 String color; 9 int age; 10 11 //静态属性 12 //静态属性一般有初始值 13 //可以使用类名、对象猫访问到 14 //如果在同一个类文件中,静态属性也可以直接访问 15 static String type="宠物"; 16 17 public Cat(String name,String color,int age) { 18 this.name=name; 19 this.color=color; 20 this.age=age; 21 22 } 23 24 public Cat() { 25 26 } 27 28 public void show() { 29 System.out.println(this.name+"---"+this.color); 30 } 31 32 //静态方法可以被类名、对象名调用 33 //如果在同一个类文件中,静态方法也可以直接调用 34 public static void eat() { 35 System.out.println("猫在吃鱼!"); 36 } 37 38 39 public static void main(String[] args) { 40 // TODO Auto-generated method stub 41 Cat cat1=new Cat("小苗","黄色",3); 42 // Cat.show(); 43 eat(); 44 Cat.eat(); 45 cat1.eat(); 46 47 System.out.println(Cat.type); 48 System.out.println(cat1.type); 49 System.out.println(type); 50 51 } 52 53 }
1 package com.unit6.test; 2 3 //import com.unit5.pojo.Cat; 4 //import com.unit5.pojo.Dog; 5 6 import com.unit5.pojo.*; 7 8 public class Test1 { 9 10 public static void main(String[] args) { 11 // 引入包 12 13 Cat cat1=new Cat(); 14 Dog dog1=new Dog(); 15 16 } 17 18 }
1 package com.unit6.test; 2 3 public class Test2 { 4 /* 5 * public:在当前项目中,所有地方都可以访问到这个方法 6 * static:静态方法,可以使用类名调用,在文件内部也可以直接调用 7 * main:固定的方法名 8 * String[] args:接收一个字符串数组类型的参数 9 * */ 10 11 public static void main(String[] args) { 12 13 System.out.println("main方法被执行了!"); 14 for(String x:args) { 15 System.out.println(x); 16 } 17 18 } 19 20 }
1 package com.unit6.test; 2 3 import com.unit5.pojo.Cat; 4 5 public class Test3 { 6 7 public static void main(String[] args) { 8 // 对象数组 9 10 Cat cat1=new Cat("小苗","黄色",1); 11 Cat cat2=new Cat("小请","红色",2); 12 Cat cat3=new Cat("小好","绿色",3); 13 Cat cat4=new Cat("小例","蓝色",4); 14 15 Cat[] arrayCat= {cat1,cat2,cat3,cat4}; 16 17 // for(int i=0;i<arrayCat.length;i++) { 18 // arrayCat[i].show(); 19 // } 20 21 for(Cat x:arrayCat) { 22 x.show(); 23 } 24 25 } 26 27 }
1 package com.unit5.pojo; 2 3 public class Emp { 4 // 例:员工类 5 String name; 6 int empnum; 7 8 public Emp(String name, int empnum) { 9 super(); 10 this.name = name; 11 this.empnum = empnum; 12 } 13 14 public int getNum() { 15 return this.empnum; 16 } 17 18 public void setNum(int num) { 19 this.empnum=num; 20 } 21 22 public static void main(String[] args) { 23 Emp p=new Emp("张三",12); 24 System.out.println(p.getNum()); 25 p.setNum(20); 26 System.out.println(p.getNum()); 27 28 } 29 30 }
1 package com.unit5.pojo; 2 3 public class Card { 4 //例:银行卡 5 int cardnum; 6 String pwd; 7 double balance; 8 9 public Card(int cardnum, String pwd, double balance) { 10 super(); 11 this.cardnum = cardnum; 12 this.pwd = pwd; 13 this.balance = balance; 14 } 15 16 public void cun(double money) { 17 if(money>0) { 18 this.balance+=money; 19 System.out.println("存入"+money+"元,余额:"+this.balance+"元"); 20 }else { 21 System.out.println("金额输入错误!"); 22 } 23 } 24 25 public void qu(double money) { 26 if(money<=this.balance) { 27 this.balance-=money; 28 System.out.println("取出"+money+"元,余额:"+this.balance+"元"); 29 }else { 30 System.out.println("金额输入错误!"); 31 } 32 } 33 34 public void setPawd(String oldpwd,String newpwd) { 35 if(oldpwd==this.pwd) { 36 if(newpwd.length()==6) { 37 this.pwd=newpwd; 38 System.out.println("恭喜你!密码修改成功!"); 39 }else { 40 System.out.println("新密码必须为6位!"); 41 } 42 }else { 43 System.out.println("原密码输入错误!"); 44 } 45 } 46 47 48 public static void main(String[] args) { 49 Card card=new Card(12,"123456",1000); 50 51 card.cun(100); 52 card.qu(1000); 53 card.setPawd("123456", "654321"); 54 } 55 56 }
posted on 2020-06-16 20:31 cherry_ning 阅读(79) 评论(0) 收藏 举报
浙公网安备 33010602011771号