亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將字符串數組返回給其他類(包括繼承)并打印

將字符串數組返回給其他類(包括繼承)并打印

躍然一笑 2023-10-13 09:59:48
我在將數組返回到 java 中的其他類或繼承子類時遇到問題。A級import java.util.Scanner; public class A {  String [] month = new String[4];    Scanner sc = new Scanner(System.in); public String[] Select()  {        System.out.println("choose");           int pick=sc.nextInt();        switch(pick)     {        case 1:           month[0]="January";                    break;        case 2:            month[0]="February";                        break;    case 3:        month[0]="March";                   break;    case 4:                     month[0]="April";           break;    }    return month;}}C級    public class C extends A{     public void child_class()    {        System.out.println(month[0]);   }        }B級public class B {    A  select = new A ();    public void normal_class()    {               System.out.println(select.month[0]);    } }主類 公共類 main {public static void main(String[] args) {        A sun = new A();        B moon = new B();        C star = new C();        System.out.println(sun.month[0]);                   moon.normal_class(); //        star.child_class();        }}結果nullnullnull我想將數組的結果返回給類或子類。如果我在A類中選擇案例1,我想從類中獲取結果“January”
查看完整描述

1 回答

?
嗶嗶one

TA貢獻1854條經驗 獲得超8個贊

請更正并完成問題中的類,將其復制到編輯器中,并確保使用預覽時它們看起來正確。我不明白B 類中的testinprint(test.arr[0]);來自哪里。但是,您正在打印尚未初始化的對象。這就是為什么你看到 null。


例如,當您創建 AA sun = new A();然后打印它時,您從未運行過測試或為 arr 分配了值。print(sun.arr[0]);


編輯原始類后。


System.out.println(sun.month[0]);month正在類中訪問A,但由于您沒有調用Select方法(應以小寫字母開頭),因此您永遠不會用數據填充數組月份。


嘗試這個:


public class A {

  String [] month = new String[4];  


 public String[] select(int pick)

  {

        switch(pick)

     {

        case 1:

           month[0]="January";          

          break;

        case 2:

            month[0]="February";                

        break;

    case 3:

        month[0]="March";           

        break;

    case 4:             

        month[0]="April";   

        break;


    }

    return month;

}

公共靜態無效主(字符串[] args){


    A sun = new A();

    B moon = new B();

    C star = new C();


    sun.select(1);

    System.out.println(sun.month[0]); //printing January

    moon.normal_class(); //you are not printing anything here

    star.child_class(); //you are not printing anything here

    }


查看完整回答
反對 回復 2023-10-13
  • 1 回答
  • 0 關注
  • 110 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號