質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

4回答

1441閲覧

Javaのオーバーライドについての質問です。

退会済みユーザー

退会済みユーザー

総合スコア0

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2017/01/11 14:57

編集2017/01/11 15:02

学校の課題をしているのですが、以下のような実行結果になりません。まだ今日オーバーライドを習ったばっかりでよくわからないんですがご指摘お願いします。初心者で説明不足かもしれませんがよろしくお願いします。

補足
(Kad11_4.java Pc.java Notebook.javaファイルは3つ作成済みです)
###実現したいこと
PCスペック
OS:Windows7
HDD:120GB
購入日:2010/3/5

NoteBookPC スペック
OS:Windows10
HDD:500GB
購入日:2015/6/3

以上のような結果にしたいです。

###ソース

Java

1public class Kad11_4{ 2 public static void main(String[] args){ 3 Pc pc = new Pc(); 4 pc.os = "Windows7"; 5 pc.hdd = 120; 6 pc.date = "2010/3/5"; 7 pc.show(); 8 System.out.println(); 9 NoteBook notebook = new NoteBook(); 10 pc.os = "Windows10"; 11 pc.hdd = 500; 12 pc.date = "2015/6/3"; 13 notebook.show(); 14 } 15} 16public class Pc{ 17 String os; 18 int hdd; 19 String date; 20 void show(){ 21 System.out.println("PCスペック"); 22 System.out.println("OS:"+this.os); 23 System.out.println("HDD:"+this.hdd+"GB"); 24 System.out.println("購入日:"+this.date); 25 } 26} 27public class NoteBook extends Pc{ 28 String guarantee = "2016/6/2"; 29 void show(){ 30 System.out.print("NoteBook"); 31 super.show(); 32 System.out.println("保証期間は"+this.guarantee+"です。"); 33 } 34} 35

###実行結果
PCスペック
OS:Windows7
HDD:120GB
購入日:2010/3/5

NoteBookPCスペック
OS:null
HDD:0GB
購入日:null
保証期間は2016/6/2です。

以上の結果になります。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

pc.os = "Windows10";

notebook.os = "Windows10";
というように、notebookに設定したい情報はnotebookのインスタンスフィールドとしてセットすればいけるはずです。

投稿2017/01/11 15:06

risaito74

総合スコア44

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Java

1NoteBook notebook = new NoteBook(); 2 pc.os = "Windows10"; 3 pc.hdd = 500; 4 pc.date = "2015/6/3"; 5 notebook.show();

pcのオブジェクトに代入しているのでnotebookオブジェクトに代入してみてはどうでしょうか

Java

1NoteBook notebook = new NoteBook(); 2 notebook.os = "Windows10"; 3 notebook.hdd = 500; 4 notebook.date = "2015/6/3"; 5 notebook.show();

投稿2017/01/11 15:05

Test1115Test

総合スコア52

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

以下でだいたい目的の結果になるのではないでしょうか

java

1public class KPA{ 2 public static void main(String[] args){ 3 Pc pc = new Pc(); 4 pc.os = "Windows7"; 5 pc.hdd = 120; 6 pc.date = "2010/3/5"; 7 pc.show(); 8 System.out.println(); 9 NoteBook notebook = new NoteBook(); 10 notebook.os = "Windows10"; 11 notebook.hdd = 500; 12 notebook.date = "2015/6/3"; 13 notebook.show(); 14 } 15} 16 class Pc{ 17 String os; 18 int hdd; 19 String date; 20 void show(){ 21 System.out.println("PCスペック"); 22 System.out.println("OS:"+this.os); 23 System.out.println("HDD:"+this.hdd+"GB"); 24 System.out.println("購入日:"+this.date); 25 } 26} 27 class NoteBook extends Pc{ 28 String guarantee = "2016/6/2"; 29 void show(){ 30 System.out.print("NoteBook"); 31 super.show(); 32 System.out.println("保証期間は"+this.guarantee+"です。"); 33 } 34}

投稿2017/01/11 15:03

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/01/11 15:05

ありがとうございます!僕の見落としで違うオブジェクトに代入してました(´・ω・`)
guest

0

Windows10とかを代入するオブジェクトpcでいいですか?

投稿2017/01/11 15:01

HogeAnimalLover

総合スコア4830

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/01/11 15:04

すいません。僕の見落としでした。ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問