当前位置: 首页> 教育> 高考 > 如何自己创造游戏_百度小程序官方收费标准_源码时代培训机构官网_长春seo顾问

如何自己创造游戏_百度小程序官方收费标准_源码时代培训机构官网_长春seo顾问

时间:2025/7/12 7:54:19来源:https://blog.csdn.net/2301_80706853/article/details/142964801 浏览次数:0次
如何自己创造游戏_百度小程序官方收费标准_源码时代培训机构官网_长春seo顾问

目录

1、多态的定义

2、对象的类型转换

3、instanceof关键字

4、Object类


1、多态的定义

在Java中,多态是指不同对象在调用同一个方法时表现出多种不同行为。例如,要实现一个动物叫的方法,由于每种动物的叫声不同,因此可以在方法中接收一个动物类型的参数,当传入猫类对象时就发出猫类对象的叫声,传入犬类就发出犬类对象的叫声。在同一个方法中,这种由于参数类型不同而导致执行效果不同的现象就是多态。

Java中多态主要有两种形式:

1、方法的重载

2、对象的多态性(方法重写)

例如:

abstract class Animal{abstract void shout();
}class Cat extends Animal{@Overridevoid shout() {System.out.println("喵喵喵");}
}
class Dog extends Animal{@Overridevoid shout() {System.out.println("汪汪汪");}
}public class TestExample {public static void main(String[] args) {//向上转型Animal an1=new Dog();Animal an2=new Cat();an1.shout();an2.shout();}
}

将Cat类对象和Dog类对象向上转型成了Animal类型的对象,然后通过Animal类型的对象an1和an2调用shout()方法,调用的分别是Cat类和Dog类中的shout()方法。

2、对象的类型转换

对象类型转换主要分为两种情况:

1、向上转型:子类对象 转换为 父类对象

2、向下转型:父类对象 转换成 子类对象

对象向上转型:

父类类型 父类对象 = 子类实例;

对象向下转型,必须指明要转型的子类类型

对象向下转型:

父类类型 父类对象 = 子类实例;

子类类型 子类对象 = (子类)父类对象;

向上转型的操作例如:

class Book{public void Details(){System.out.println("这是百科全书");}
}class Textbook extends Book{@Overridepublic void Details() {System.out.println("这是数学书");}
}public class TestExample1 {public static void main(String[] args) {//向上转型Textbook textbook=new Textbook();Book book=textbook;book.Details();}
}

在向上转型后,父类对象的实例可以调用子类对象中重写的方法,而不能调用子类对象中没有被重写的方法。

想要调用子类中没有重写的方法,就需要发生向下转型。

例如:

class Book{public void Details(){System.out.println("这是百科全书");}
}class Textbook extends Book{@Overridepublic void Details() {System.out.println("这是数学书");}public void Show(){System.out.println("我喜欢数学");}
}public class TestExample1 {public static void main(String[] args) {//向上转型Book book=new Textbook();//向下转型Textbook textbook=(Textbook)book;textbook.Details();textbook.Show();}
}

将Book的实例转化为了Textbook的实例


3、instanceof关键字

Java中可以使用instanceof 关键字判断一个对象是否是某个类(或者接口)的实例。

语法格式为:对象 instanceof类 (或接口)

如果对象是指定类的实例对象,则返回ture,否则返回false。

例如:

class Book{public void Details(){System.out.println("这是百科全书");}
}class Textbook extends Book{@Overridepublic void Details() {System.out.println("这是数学书");}public void Show(){System.out.println("我喜欢数学");}
}public class TestExample1 {public static void main(String[] args) {//向上转型Book book1=new Textbook();System.out.println("Book book1=new Textbook() "+(book1 instanceof Book));System.out.println("Book book1=new Textbook() "+(book1 instanceof Textbook));//实例BookBook book2=new Book();System.out.println("Book book2=new Book() "+(book2 instanceof Book));System.out.println("Book book2=new Book() "+(book2 instanceof Textbook));}
}

执行结果:

Book book1=new Textbook() true
Book book1=new Textbook() true
Book book2=new Book() true
Book book2=new Book() false

从执行结果中可以看出,在经过向上转型后book1既是Book的实例,又是Textbook的实例。


4、Object类

Java提供了一个Object类,它是所有类的父类,每个类都直接或间接的继承Object类,因此Object类通常称为超类。当定义一个类时,如果没有使用extends关键字为这个类显示指定父类,那么这个类会默认继承Object类。

Object类有两个常用的方法

1、boolean equals() 判断两个对象是否相等

2、String toString() 返回对象的字符串表示形式

演示一个toString()方法的使用

class Animal{}
public class TestExample {public static void main(String[] args) {Animal animal=new Animal();System.out.println(animal.toString());}
}

执行结果(字符串表示形式):

Animal@1b6d3586

Animal默认继承Object类,Object类中定义了toString()方法。

可以再Animal类中重写toString()方法,返回对象特有的信息

class Animal{public String toString(){return "这是一个动物";}
}
public class TestExample {public static void main(String[] args) {Animal animal=new Animal();System.out.println(animal.toString());}
}

执行结果:

这是一个动物


关键字:如何自己创造游戏_百度小程序官方收费标准_源码时代培训机构官网_长春seo顾问

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: