java问题 编写一个程序,用以重写父类Addition中名为add()的抽象方法。

作者&投稿:裔树 (若有异议请与网页底部的电邮联系)
求两道JAVA题~ 刚开始学 不懂 望高手指点 最好解释下的 谢谢~

第一题
public class Employee{
public String name = "";
public String basic = "";
public String address = "";

public void show(){
System.out.pritnln("name:"+ name);
System.out.println("basic:"+ basic);
System.out.println("address:"+ address);
}
}
public class Manager extends Employee{
private String derpartment = "";
public void show(){
.............这些地方就类似了
}
}
另一个也类似这么写 这里就不重复了。

第二题
public abstract class Action {
public Object a;
public Object b;

public Action(Object a, Object b){
this.a = a;
this.b = b;
}

public abstract void add();
}

public class NumberAddition extends Action {

public NumberAddition(Integer a, Integer b) {
super(a, b);
// TODO Auto-generated constructor stub
}

public void add(){
int value = ((Integer)a).intValue() + ((Integer)b).intValue();
}

}
String 那个类就更简单了 用toString就行 感觉有些笨拙 就这样吧。

abstract class Addition
{
int n1,n2,n3;
String s1,s2,s3;
abstract void add();
}
class NumberAddition extends Addition
{
void add()
{
n3=n1+n2;
}
}
class TextConcatenation extends Addition
{
void add()
{
s3=s1+s2;
}
}

其实,我觉得我写的这个不太好,你看看吧

Addition类


public abstract class Addition<T> {
protected T item1;
protected T item2;
public Addition(T item1, T item2){
this.item1 = item1;
this.item2 = item2;
}
public abstract T add();

}

NumberAddition:


public class NumberAddition<T> extends Addition{

public NumberAddition(T item1, T item2) {
super(item1, item2);
// TODO Auto-generated constructor stub
}

@Override
public Object add() {
// TODO Auto-generated method stub
if(item1 instanceof Integer){
return (int)item1 + (int)item2;
}
return null;
}




}

TextAddition:


public class TextAddition extends Addition{

public TextAddition(Object item1, Object item2) {
super(item1, item2);
// TODO Auto-generated constructor stub
}

@Override
public Object add() {
// TODO Auto-generated method stub
if(item1 instanceof String){
return (String)item1 + item2;
}
return null;
}

}

AdditionTest


public class AdditionTest {
public static void main(String[] args){
NumberAddition numberAddition = new NumberAddition(34, 45);
System.out.println(numberAddition.add());
TextAddition textAddition = new TextAddition("java ", "program");
System.out.println(textAddition.add());
}

}


public class PolyTest {
public static void main(String[] args) {
new NumberAddition().add();
new Text().add();
}
}
//父类!
abstract class Addition{
public int a,b;
public String s1,s2;
Addition(int a,int b){
this.a=a;
this.b=b;
}
Addition(String s1,String s2){
this.s1=s1;
this.s2=s2;
}
abstract public void add();
}
//数字类!
class NumberAddition extends Addition{
NumberAddition(){
this(10,20);
}
NumberAddition(int a,int b){
super(a,b);
}
public void add() {
System.out.println(a+b);
}
}
//字符串类!
class Text extends Addition{
Text(){
this("你好,","Java!");
}
Text(String s1,String s2){
super(s1,s2);
}
public void add() {
System.out.println(s1+s2);
}
}



惠来县17520928786: 编写一个java程序,使用多重循环语句. 请编写程序,要求程序能够输出九九乘法表. -
丹哗牛痘: public class Demo {public static void main(String[] args) {for (int i = 1; i <= 9; i++) {for (int j = 1; j <=i; j++) {System.out.print(j+"*"+i+"="+i*j+"\t");}System.out.println();}} }

惠来县17520928786: java程序设计题目,这里为什么要双重循环,用一重不可以吗? -
丹哗牛痘: //希望对你有帮助:如果一重循环的话,你的值就不是累加的值,而是,最后的一次,应为多次赋值,取最后的,利用二重循环,是实现连接,因为程序的最后,还需要把输入的字符转换成数值型,.

惠来县17520928786: 编写JAVA程序,接受用户输入的1~12之间的整数,若不符合条件则重新输入,利用switch语句输出对应月份的天数. -
丹哗牛痘: import java.util.Scanner;public class Test { public void testDay() { Scanner scn = new Scanner(System.in); // 要装JDK5.0以上才能支持 try { while (true) { System.out.print("请输入1-12中的一个数:"); int input = scn.nextInt(); switch (input) ...

惠来县17520928786: JAVA 问题,用socket编写一个客户端程序 -
丹哗牛痘: 给你一个我写的示例,用的是基于TCP的Socket技术,你锻炼一下,改一改,不会改再找我!客户端:import java.net.Socket; import java.io.InputStream; import java.io.OutputStream; import java.io.InputStreamReader; import java.io....

惠来县17520928786: JAVA问题:用for语句编写一个程序?
丹哗牛痘: 暖冰 : 无限循环直接用while(true){}不就行了,搞这么麻烦. for(int i=0; i < 10;i ++){ run();//自己定义方法 } 泛型: String[] names = { "BadBoy", "GoodBoy", "HappyGirl", "sadGirl" }; for (String option : names) { System.out.println(option); }

惠来县17520928786: java怎样让重复问一个问题,直到用户结束 -
丹哗牛痘: package com.me.small_test; import java.util.Scanner; public class Practest2 { /** * Creates a new instance of <code>practest2</code>. */ public Practest2() { } /** * @param args * the command line arguments */ public static void main(String[] args) ...

惠来县17520928786: 一个简单的JAVA代码问题 -
丹哗牛痘: 利用全排列就可以不用去判断是否重复了 public class Nine { void range(int[] a,int i){ if(i==a.length){ if(a[0]+a[1]+a[2]==15&&a[2]+a[3]+a[4]==15&&a[4]+a[5]+a[6]==15&&a[6]+a[7]+a[0]==15) System.out.println(a[0]+" "+a[1]+" "+a[2]+"\n"+a[7]...

惠来县17520928786: 我编了一个Java代码,目的是删除重复行 -
丹哗牛痘: 把 String[] line --> 改成 Set<String> lines = new LinkedHashSet<String>(); 然后在 line[i] = stream.readLine(); 这样的代码改成 lines.add(stream.readLine());即可.因为 Set类型的集合,是不允许有重复的,如果有重复,它自己会忽略.

惠来县17520928786: 一个java程序的问题
丹哗牛痘: import java.util.*;class Poker { Vector<Base> poker; final static int MAX_SIZE = 52; // 总牌数 // 四种花色 final static int TYPE_CLUBS = 0;final static int TYPE_DIAMONDS = 1;final static int TYPE_SPADES = 2;final static int TYPE_...

惠来县17520928786: 关于String的一个问题,用Java语言. -
丹哗牛痘: 你好,代码如下,请参考:public class TestString { public static void main(String[] args) { String s1 = "you are a student"; String s2 = "how are you"; System.out.println("s1和s2是否相等:" + s1.equals(s2)) ; String a1 = "...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网