zoukankan      html  css  js  c++  java
  • 面向对象

     

    package cow_farm;
    
    public class Test {
        
        /*农场一头小母牛,
         *每年生头小母牛,
         *母牛5岁产母牛,
         *20年上多少牛?--java面向对象方式实现
         **/
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
             Farm.getCows(20);
        }
    
    }

     

    农场类:

     1 package cow_farm;
     2 
     3 import java.util.ArrayList;
     4 import java.util.List;
     5 
     6 public class Farm {
     7     
     8     private static List<Cow> cows;
     9     static{
    10         cows =new ArrayList<>();
    11         Cow cow = new Cow(5);
    12         cows.add(cow);
    13     }
    14     
    15     public static List<Cow> getCows(int year){
    16         for(int i=0;i<year;i++){
    17             List<Cow> tempCows =new ArrayList<Cow>();
    18             for(Cow cow:cows){
    19                 tempCows.add(cow);
    20                 cow.setAge(cow.getAge()+1);
    21                 Cow xiaoCow = cow.sheng();
    22                 if(xiaoCow != null){
    23                     tempCows.add(xiaoCow);
    24                 }
    25             }
    26             cows = tempCows;
    27             /*System.out.printf("第%d年奶牛数量:%d%n",i+1,cows.size());*/
    28         }
    29         System.out.println("第"+year+"年奶牛的数量为"+cows.size()+"头");
    30         return cows;
    31     }
    32     
    33 }

    母牛类:

     1 package cow_farm;
     2 
     3 public class Cow {
     4     private int age;
     5     
     6     public int getAge() {
     7         return age;
     8     }
     9 
    10     public void setAge(int age) {
    11         this.age = age;
    12     }
    13     
    14     public Cow(int age) {
    15         super();
    16         this.age = age;
    17     }
    18 
    19     public Cow sheng(){
    20         if(age>=5){
    21             return new Cow(1);
    22         };
    23         return null;
    24     }
    25     
    26 
    27 
    28 }

    总结:1.发现自己的集合,这一块很模糊。

        2.System.out.printf("第%d年奶牛数量:%d%n",i+1,cows.size())----中printf,println,print这三者的区别。%d是插数据,%n是换行(我的这是C++学过,好久不用忘了,多学习,多总结。)
    3.java面向对象(封装,继承,多态)
  • 相关阅读:
    数据结构算法(3)--排序
    数据结构算法(2)--字符串匹配
    数据结构与算法(0)-四则运算
    数据结构算法(1)--递归转化
    高级软件工程实践总结
    beta冲刺随笔集合
    Beta冲刺-用户测试报告
    Beta冲刺总结
    SDN期末作业-负载均衡的实现
    SDN第六次作业
  • 原文地址:https://www.cnblogs.com/xinxin-ting/p/8547283.html
Copyright © 2011-2022 走看看