Javaにおけるオブジェクトクラスの役割と使い方

怪我咯
リリース: 2017-06-26 11:25:02
オリジナル
3013 人が閲覧しました

Objectクラスのメソッド
String roString()は、オブジェクトの文字列表現型+@+ハッシュ値(アドレス値)を返します
オブジェクトのアドレス値を見ると、それが同じオブジェクトであるかどうかのみ区別できます。あまり意味がありません。 したがって、サブクラスは通常、このメソッドをオーバーライドして、アドレス値ではなく属性を出力します


toString メソッドをオーバーライドするためのショートカット キーは、alt + shift + s + s です

* のような演算子は操作できません参照データ型
そして、== が参照データ型を比較す​​る限り、常に比較されるのはアドレス値です。 2 つのオブジェクトが等しいかどうかを比較し、比較されるのはアドレス値です
サブクラスはこのメソッドをオーバーライドして 2 つのオブジェクトの属性値を比較できます

例外とエラーの違い 例外は処理できます。コードは処理後も実行を続けることができます
エラーは処理できず、コードの変更のみが可能であり、それ以外の場合はプログラムを実行できません


例外を処理する最初の方法は例外を宣言することです throw キーワードはメソッド内で使用されます
throws 例外のオブジェクト
throws キーワードは、例外を宣言するメソッドの宣言で使用されます
throws 例外のクラス名
注:
1.throws カンマで区切って複数の例外を宣言できます
2. throws は複数の例外の共通の親クラスを宣言できます


例外を処理する 2 番目の方法

try{
  可能出现异常的代码
}catch(异常类名  变量名){
  任意内容 一般打印异常对象的信息
}
ログイン後にコピー

マルチキャッチ例外処理

try{  可能出现异常的代码}catch(异常的类名 变量名){
}catch(){
}...
ログイン後にコピー

注意事項: 複数のキャッチ間に順序はありますか?
例外間に直接の継承関係や順序がない場合
ArrayIndexOutOfBoundsException extends IndexOutOfBoundsException extends RuntimeException
NullPointerException extends RuntimeException
例外間に継承関係や順序がある場合、大きいものは後から配置される
NullPointerException extends RuntimeException

キャッチされた場合親クラス例外の場合、ポリモーフィック呼び出しによりサブクラス例外を省略する (キャプチャできない) 可能性があります

finally
try{
  }catch(){
  }finally{
    必须执行的代码 
    无论是否有异常 无论是否处理了异常 
  }
ログイン後にコピー


コンパイル時例外と実行時例外の違い
コンパイル時例外例外 エラーが報告されるコンパイル中に処理する必要があるため、処理せずにプログラムを実行することはできません。

実行時例外 RuntimeException コンパイル中にエラーは報告されませんが、実行時にエラーが報告されます。実行時例外は処理される場合もあれば、処理されない場合もあります。処理されます
一般に、ランタイム例外は次のとおりです。コードに問題がある場合は、コードを変更する必要があります
ランタイム例外がスローされるとプログラムは中断されるため、プログラムを中断するためにランタイム例外を使用することがあります



サブ親クラスのメソッドをオーバーライドする例外の問題 親クラスのメソッドが例外をスローする場合
サブクラスは例外をスローする必要はありません
サブクラスも例外をスローできますが、サブクラスによってスローされる例外は、スローされる例外以下である必要があります親クラスによる
親クラスのメソッドが例外をスローしない場合
サブクラス内のメソッドが例外をスローする場合は、サブクラスは例外をスローできません 例外が発生した場合、自分で処理することしかできず、例外をスローすることはできません



よく使用される 3 つのメソッド例外用例外情報を取得するメソッド
String getMessage() "ファイルが見つかりません"
String toString() java.io.FileNotFoundException: file Not found
void printStackTrace() 最も詳細な例外情報、例外クラス名の文字列の場所、など


カスタム例外 例外の継承はコンパイル時例外です RuntimeException の継承は実行時例外です
コンストラクターを追加します

 1     public class NoAgeException extends Exception{ 2  3     public NoAgeException(){ 4          5     } 6      7     public NoAgeException(String message){ 8 //        System.out.println(message); 9         super(message);10     }11 }
ログイン後にコピー

============ =============================================

 1 public class NoAgeException extends RuntimeException{ 2  3     public NoAgeException(){ 4          5     } 6      7     public NoAgeException(String message){ 8 //        System.out.println(message); 9         super(message);10     }11 }
ログイン後にコピー

カスタム例外の使用JDKが提供する例外 カスタム例外の使用方法
カスタム例外の処理
throwsするかcatchを試す

以上がJavaにおけるオブジェクトクラスの役割と使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!