设有下面的一个类定义:
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设有下面的一个类定义:相关的知识,希望对你有一定的参考价值。
设有下面的一个类定义: class AA static void Show( ) System.out.println("我喜欢Java!"); class BB void Show( ) System.out.println("我喜欢C++!"); 若已经使用AA类创建对象a和BB类创建对象b,则下面哪一个方法调用是正确的:()
A、a.Show( ) b.Show( )
B、AA.Show( ); BB.Show( );
C、AA.Show( ); b.Show( );
D、a.Show( ); BB.Show( );
static方法可以使用类名调用也可以使用对象调用
而BB类的那个方法只能使用对象调用
A本来也应该对的,可是没写分号本回答被提问者和网友采纳 参考技术B 这个题目稍微有点小问题,答案A和C都没有语法错误,如果单选题的话,那就选C,这是最佳答案,不过A也不会报错的。 参考技术C C答案正确,static 方法不用实例化对象就行~ 参考技术D c
23种设计模式
1.普通工厂模式。
首先由以下几个类,工厂类,接口,接口实现类,测试类。
接口:定义一个接口
接口实现类:实现上面的接口
工厂类:创建接口实现类的对象。
以下是下面的逻辑图
定义一个接口:
interface Sender{
public void send();
}
定义接口实现类:
- public class MailSender implements Sender {
- @Override
- public void Send() {
- System.out.println("this is mailsender!");
- }
- }
- public class SmsSender implements Sender {
- @Override
- public void Send() {
- System.out.println("this is sms sender!");
- }
- }
建立工厂类:
- public class SendFactory {
- public Sender produce(String type) {
- if ("mail".equals(type)) {
- return new MailSender();
- } else if ("sms".equals(type)) {
- return new SmsSender();
- } else {
- System.out.println("请输入正确的类型!");
- return null;
- }
- }
- }
- public class FactoryTest {
- public static void main(String[] args) {
- SendFactory factory = new SendFactory();
- Sender sender = factory.produce("sms");
- sender.Send();
- }
- }
以上是关于设有下面的一个类定义:的主要内容,如果未能解决你的问题,请参考以下文章