本文主要是介绍面向对象的简单初步认识,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
首先我们从一道经典的面向对象题目理解:一头母牛一年生一头小牛,一头小牛过四年也每年生一头小牛,照此推算,20年后一共有多少头牛?
牛:为一个具体对象。
牛:属性:年龄
按照题意可知:这头牛的年龄只要达到4岁就能开始生小牛
那首先我们先写一个小牛类:没过一年生一头小牛,这里面应该有个方法记录小牛的年龄,和新增的小牛
public void cow(){private int age;public cow(int age){this.age=age;}public void birthday(ArrayList<cow> cows){age++;if(age>=4){//如果牛龄达到4岁,new一个新的小牛cows.add(new cow(0));}}
}[点击并拖拽以移动]
然后是主程序:先对母年进行实例化
public class beef(){ArrayList<cow> cows=new ArrayList<cow>();cows.add(new cow(4));for(int i=0;i<20;i++){//每次都要重新new一个list用来记录新增的小牛,相当于一个容器存储ArrayList<cow> newcows=new ArrayList<cow>();for(Cow cow:cows){cow.birthday(newcows);}//将所有的牛都加到这个cows中cows.addAll(newcows);}System.out.println("二十年共有牛 " + cows.size() + " 头。"); }[点击并拖拽以移动]
这篇关于面向对象的简单初步认识的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!