class?Gog{
成都創(chuàng)新互聯(lián)長期為近千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為醴陵企業(yè)提供專業(yè)的做網(wǎng)站、網(wǎng)站設(shè)計,醴陵網(wǎng)站改版等技術(shù)服務(wù)。擁有10余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
private?String?name;
private?int?age;
public?Gog(){//無參數(shù)的構(gòu)造器
}
public?Gog(String?name,?int?age)?{//有參數(shù)的構(gòu)造器
this.name?=?name;
this.age?=?age;
}
public?String?toString()?{
return?"這只狗名叫"+name+"今年"+age+"歲了,相當(dāng)于人類"+getAsPersonAge()+"歲了";
//return?"這只狗名叫"+name+"今年"+age+"歲了";
}
public?int?getAsPersonAge(){//計算相當(dāng)于人的年齡
return?age*7;
}
//屬性的set和get方法
public?String?getName()?{
return?name;
}
public?void?setName(String?name)?{
this.name?=?name;
}
public?int?getAge()?{
return?age;
}
public?void?setAge(int?age)?{
this.age?=?age;
}
}
public??class?Kennel{
public?static?void?main(String[]?args)?{
?Gog?g?=new?Gog();?
?g.setName("旺旺");
?g.setAge(3);
?System.out.println(g);
?
?Gog?g2?=?new?Gog("大家旺",?2);
?System.out.println(g2);
?
?Gog?g3?=?new?Gog("天天旺",3);
?g3.setAge(5);
?System.out.println(g3);
?System.out.println(g3.getName()+"狗齡"+g3.getAge()+"歲;相當(dāng)于人"+g3.getAsPersonAge()+"歲");
?
}
}
運行后
這只狗名叫旺旺今年3歲了,相當(dāng)于人類21歲了
這只狗名叫大家旺今年2歲了,相當(dāng)于人類14歲了
這只狗名叫天天旺今年5歲了,相當(dāng)于人類35歲了
天天旺狗齡5歲;相當(dāng)于人35歲
/**Dog類*/
package test20201214;
public class Dog {
//屬性
String name;
char sex;
String breed;
String ability;
//無參構(gòu)造方法
public Dog(){}
//有參構(gòu)造方法
public Dog(String name,char sex,String breed,String ability){
this.name = name;
this.sex = sex;
this.breed = breed;
this.ability = ability;
}
//設(shè)置狗的屬性
public void setDog(String name,char sex,String breed,String ability){
this.name = name;
this.sex = sex;
this.breed = breed;
this.ability = ability;
}
//顯示狗狗信息
public void showAbility(){
System.out.println("名字:"+name+"? 性別:"+sex+" 品種:"+breed+" 技能:"+ability);
}
}
/**TestDog類*/
package test20201214;
public class TestDog {
public static void main(String[] args) {
//無參創(chuàng)建對象
Dog dog = new Dog();
//有參創(chuàng)建對象
Dog dog2 = new Dog("華萊士", 'F', "柯基犬", "賣萌裝可憐");
//給dog賦值
dog.setDog("斗牛士", 'F', "藏獒", "威風(fēng)凜凜,恐嚇");
//輸出兩個狗狗信息
dog.showAbility();
dog2.showAbility();
}
}
/**測試結(jié)果*/
無論什么語言,服務(wù)器主要考慮的就是兩點,一是并發(fā),二是數(shù)據(jù)(庫)對接,Java在這個方面很適合的。
并發(fā)除了有netty神庫以外,還有很多其他的網(wǎng)絡(luò)庫,或者直接用tomcat也行,總之挺好,不過如果你要用netty的話,需要了解這個庫和并發(fā)編程,都有很多(經(jīng)典)書,去看,不然你就等著踩坑吧。
數(shù)據(jù)(庫)方面,有memcache,radis的緩存庫,還有mysql和其他nosql,對接起來也很簡單,但是還是那句話,坑很多,需要自己填。
首先確定游戲需不需要長鏈接的主動推送功能,再確定并發(fā)量(效率),就基本上可以確定用什么庫和框架了,至于數(shù)據(jù)壓縮用gzip還是7z,傳遞協(xié)議是protobuff還是json還是xml,那都是細(xì)節(jié)問題了,總之都能解決問題,不要過早考慮性能啊什么的,先把最簡單的登錄搞起來再說。