㈠ 用java多線程寫一個貓叫和狗叫混合的程序 求各位大神指點 本人是it菜鳥級別的
一寫就寫多了,不過包含的東西比較多,java的重要知識點裡面也有
這個結構是簡單的處理的,有興趣的話你可以想像下寫成一個小的文字游戲
public class D {
public static void main(String[] args){
Cat cat1 = new Cat("Tom" , 10);
Cat cat2 = new Cat("Sun" , 15 , "蘋果樹");
Dog dog1 = new Dog("lufy" , 5);
Dog dog2 = new Dog("nan" , 20 , "泳池");
cat1.start();
cat2.start();
dog1.start();
dog2.start();
}
}
abstract class Creature extends Thread
{
protected int life; //生物的壽命
protected String name = "";
protected String objname = "";
public void call(){};
public void eat(){};
public void active(int state){};
}
class Cat extends Creature
{
public Cat(String name , int life)
{
this.name = name;
this.life = life;
System.out.println("小貓" + name + "誕生了 , 壽命" + life);
}
public Cat(String name , int life ,String objname)
{
this.name = name;
this.life = life;
this.objname = objname;
System.out.println("小貓" + name + "誕生了 , 壽命" + life + "喜歡" + objname );
}
public void climb()
{
System.out.println("小貓" + name + "在爬樹" );
}
public void climb(String objname)
{
System.out.println("小貓" + name + "在爬" + objname + "樹");
}
@Override
public void call() {
System.out.println("小貓" + name + "停下來在喵喵的叫" );
}
@Override
public void eat() {
System.out.println("小貓" + name + "餓了,它在吃東西" );
}
@Override
public void active(int state) {
switch(state)
{
case 1:
if(objname.length() > 0)
climb(objname);
else
climb();
break;
case 2:
call();
break;
case 3:
eat();
break;
}
}
@Override
public void run() {
//你可以嘗試在這里做一個狀態機,控制動物的行為
int i = 0 ;
int state = 0 ;
while(i < life)
{
double rnd = Math.random();
state = (int)(rnd * 4);//隨機出狀態
active(state);
i++;
}
System.out.println("小貓" + name + "它的生命結束了,享年" + life);
}
}
class Dog extends Creature
{
public Dog(String name , int life)
{
this.name = name;
this.life = life;
System.out.println("小狗" + name + "誕生了 , 壽命" + life );
}
public Dog(String name , int life , String objname)
{
this.name = name;
this.life = life;
this.objname = objname;
System.out.println("小狗" + name + "誕生了 , 壽命" + life + "喜歡" + objname );
}
public void swim()
{
System.out.println("小狗" + name + "在游泳" );
}
public void swim(String objname)
{
System.out.println("小狗" + name + "在" + objname + "游泳");
}
@Override
public void call() {
System.out.println("小狗" + name + "停下來在喵喵的叫" );
}
@Override
public void eat() {
System.out.println("小狗" + name + "餓了,它在吃東西" );
}
@Override
public void active(int state) {
switch(state)
{
case 1:
if(objname.length() > 0)
swim(objname);
else
swim();
break;
case 2:
call();
break;
case 3:
eat();
break;
}
}
@Override
public void run() {
//你可以嘗試在這里做一個狀態機,控制動物的行為
int i = 0 ;
int state = 0 ;
while(i < life)
{
double rnd = Math.random();
state = (int)(rnd * 4);//隨機出狀態
active(state);
i++;
}
System.out.println("小狗" + name + "它的生命結束了,享年" + life);
}
}
㈡ 用java代碼替換字元串中的子字元串
用字元串的replaceAll方法
示例如下
㈢ 在小貓愛學java培訓後,能達到什麼樣的水平請學過得人答
我舉個例子吧,我在圖靈課堂(小貓愛學前身)學過java,但剛進公司的時候就讓我去做php網站項目,語言是相通的,只要你能下定決心學習,就不要擔心你沒有開發項目的能力。
㈣ 共有5隻小貓,每次圈出3隻,想想共有幾種圈法
123 124 125 134 135 234 235 345 共8種
㈤ 一道java編程題,請各位大神前來解答
代碼如下:
abstractclassAnimal{
privateStringname;
publicAnimal(Stringname){
this.name=name;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicabstractvoidenjoy();
}
classCatextendsAnimal{
privateStringeyesColor;
publicCat(Stringname){
super(name);
}
publicStringgetEyesColor(){
returneyesColor;
}
publicvoidsetEyesColor(StringeyesColor){
this.eyesColor=eyesColor;
}
@Override
publicvoidenjoy(){
System.out.println("小貓"+getName()+"高興的喵喵叫。");
}
}
classDogextendsAnimal{
privateStringfurColor;
publicDog(Stringname){
super(name);
}
publicStringgetFurColor(){
returnfurColor;
}
publicvoidsetFurColor(StringfurColor){
this.furColor=furColor;
}
@Override
publicvoidenjoy(){
System.out.println("狗狗"+getName()+"高興的搖起了尾巴。");
}
}
classLady{
privateStringname;
privateAnimalpet;
publicLady(Stringname,Animalpet){
this.name=name;
this.pet=pet;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicAnimalgetPet(){
returnpet;
}
publicvoidsetPet(Animalpet){
this.pet=pet;
}
publicvoidmyPetEnjoy(){
pet.enjoy();
}
}
publicclassApp{
publicstaticvoidmain(String[]args){
Catcat=newCat("Jerry");
cat.setEyesColor("藍色");
Ladylady1=newLady("張女士",cat);
lady1.myPetEnjoy();
Dogdog=newDog("旺財");
dog.setFurColor("黃色");
Ladylady2=newLady("王女士",dog);
lady2.myPetEnjoy();
}
}
㈥ 小動物圍成圈按順序寵物報數那麼27是誰報的一號小兔二號小馬三號小貓四號小猴
一號小兔、二號小馬、三號小貓、四號小猴,圍成圈按順序報數,27是小貓報的。
㈦ java小貓釣魚
高房價刺客的