Javaのスコープ官民がやさしい違いを記述しないで保護されましたか?
- 国民は:どのクラス参照することができます。
- 保護:パッケージには、同じクラスの下に他の、現在のクラス、子孫クラスは、すべてのパッケージの中で、使用することはできません
使用。 - 優しい:、子孫クラスや他のパッケージを使用することはできません、現在のクラスを書いていないときは、同じパッケージを使用することができます。
- プライベート:のみ現在のクラスを使用することができます。
そして&&&区別。
- これは、ビット演算子&、および論理演算子&&です。2は比較することはできません。
コレクションとコレクションの違い。
- これは、Javaの回収容器フレームのトップレベルのインタフェースです。これは主に、リストを継承し、二つのインターフェースを設定されています。
- コレクションクラスのコンテナクラスのヘルプです。これは、コンテナの様々な達成するための静的メソッドの範囲を提供しています
、並べ替え、検索するための操作をするスレッドの安全性を。 - スレッド・セーフ:安全なコレクションのスレッド同期の集まりになります同期メソッドを使用します。
class model{
List list1 = Collections.synchronizedList(new ArrayList());
List list2 = Collections.synchronizedMap(new Map<String,String>());
List list3 = Collections.synchronizedSet(new TreeSet<>());
}
文字列s =新しい文字列(「ASD」)オブジェクトの数を作成しました。
- 我々は2つを作成しました。まずASD文字列オブジェクトを作成します。次に、新しい文字列がそれにASDを得ました。
- 文字列s =「ASD」:この方法では、プロセス変数の格納領域インチ
- 新しい文字列(「ASD」)は、この方法でオブジェクトをヒープ上に格納されています。
Javaで何のgotoキーワードはありませんか?
- JavaはJavaで何の使用はありませんが、単語を禁じます。goto文は、多くの場合、条件文と一緒に使用されます。達成するために使用することができる
条件分岐、ループ構成、機能等のうちループを。しかし、構造化されたプログラムでは、一般的に避けるために、goto文を使用していない
、混乱にプログラムの流れをとても理解することは困難とデバッグ手順を。
3 5%、3.5%-5%-3、-5%-3結果はどのくらいですか?
- 記号の右側に件名:2-22-2
差が過負荷とオーバーライド
- 過負荷:同じクラスでの過負荷は、限り、同じメソッド名として、引数の数は、戻り値は一致していません。アクセスタイプを変更することもできます。
- 書き換え:クラス階層での使用をオーバーライドし、メソッド名、戻り値、パラメータの数が一致している必要があります。アクセスの種類は、偉大な親になります。
セットのコンテナ要素は達成するためにどのような方法で、その後、繰り返されていませんか?
- 下地の第1セットは、マップを達成し、そしてキーが繰り返されていないマップするように設定されています。putメソッドが実行されますので、キーと値のマップが繰り返されることはありません
値がequalsメソッドの比較、その後一貫しているので、もし、ハッシュコードの比較を。これは、そのキーの価値の一意性を保証します。
エラーと例外の違い
- エラーが回復するが、一般に、スタックオーバーフロー、メモリのオーバーフローのような非常に困難な問題を意味することができます。
- 例外は、デザインや操作を実現するために、時間の問題であり、異常を指します。
jdk8の主な新機能
- ラムダ式と機能インタフェース:
lambda表达式也称为闭包。是jdk8中的最大的改变,它允许我们将函数当成参数传递给某个方法,或者把代码
本身当做数据处理:函数式开发。
- デフォルトのインターフェースはメソッドと静的メソッドを追加します。
default和static
- メソッド参照:
方法引用使得开发者可以引用现存的方法,java类的构造方法或者实例对象。一般和lambda表达式配合使用。
使得代码简介,紧凑。
构造器引用 Class::new///Class<T>::new
静态方法引用 Class::static_method
某个类的成员方法引用 Class::method
实例对象的成员方法引用 instance::method
- リピート注:
自从java5引进注解之后,注解使用的越来越多,尤其是在框架中,但是注解不能在一个地方多次使用,
java8打破了这个限制,可以在一个地方重复使用同一个注解,使用 @Repeatable定义重复的注解
- より良い型推論
编译器可以推导出某个参数的数据类型,使得代码更加的简洁
- アプリケーションシナリオの注釈を広げます
现在注解几乎可以使用在任何元素上。局部变量,接口,超类,实现类等
抽象クラスインターフェースの違い
- 同じポイント:両方が直接インスタンス化することはできません
- 違い:
1. 抽象类是可以有方法体的,接口中没有,但是java8的新特性中接口可以写static和default关键字
的方法。
2. 抽象类中的成员变量可以随意修饰,接口中只能是public sttaic final类型
3. 接口中不能含有静态代码块,静态方法。抽象类可以有,新特性之后,接口可以写静态方法。
4. 一个类只能单继承,但是可以多实现。
5. 抽象类可以定义成员变量,接口中的变量都是常量。
エンティティクラス抽象クラスを継承することができるかどうか?
- 抽象クラスは、エンティティクラスを継承することができますが、場合にのみ、明確なコンストラクタを持つエンティティクラス。
コンストラクタは、それを上書きすることができますか?
- いいえ、コンストラクタを継承することはできませんので。しかし、それは、過負荷かもしれません。
Stringクラスには、それを継承することができますか?
- いいえ、最終的にクラスが変更されました
try-catch-決勝では、実行順序、その後、試しにreturn文?
- 最終的なコードは、復帰前に実行されます。
静的変数とインスタンス変数の違い
- 静的変数は、クラス変数として知られている静的変数を、修正され、任意のオブジェクトは、クラスに属する関係なく、どのように多くのオブジェクトクラスを作成しません
静的変数やメモリ内のコピーは1つだけ。 - インスタンス変数は、特定のインスタンスに依存しなければならない、オブジェクトを介してアクセスするためのオブジェクトを作成する必要性が、静的変数を実現することができる複数のオブジェクトが共有するよう
メモリ
ArrayListのとのベクトル、HashMapのとHashtableの違いの違い。
ArrayListの和ベクトル:
- 同期:ArrayListのは、それが同期され、ベクターは、スレッドセーフで、それが同期されていない、スレッドセーフではありません。
データの増加:50%のArrayListは、Vectorが100%で成長する、元のコレクションのしきい値に到達するまでの時間に成長します。
HashMapの和のHashtable:
- 歴史的な理由:Hashtableの辞書クラスに基づいており、HashMapのは、Mapインタフェースの実現java1.2の導入があります。
- 同期:ハッシュテーブルはHaspMapスレッドが安全でない、スレッドセーフです。
値:HashMapのできる唯一のnull値、キーまたは値。
char型の変数は、文字、それを保存することができますか?なぜ?
缶、Unicodeの符号化とJavaは、charがその中国人は問題ありません入れて、16個の文字を占めました。
***GCとは何ですか?なぜGCがあるはず?
GCは、ガベージコレクタです。JavaのCとは異なり、メモリを解放手動で変数を定義します。GCは、主に彼が自動的にオブジェクトを検出することができ、達成される
自動回復の目的を達成するために、範囲を超えています。
文字列とStringBufferのとのStringBuilderの違い
- 文字列の長さは不変である、およびバッファBuilderは、変数です。
- バッファとの違いは、バッファは、スレッドセーフであるということである最大のビルダー、ビルダースレッドは安全ではありません。だから、マルチスレッドの推奨
バッファー、シングルスレッドを使用ビルダー。
最終の違いは、最終的には、確定します
- 最終:修飾子、変更されたクラス:継承することはできません、修正変数は:定数、修飾法になる:あなたはリロードすることはできません
- 最後に:例外は、任意のクリーンアップ操作を実行するためにブロックし、最終的に処理されます。
- 確定:メソッド名を、JavaはGCがメモリからオブジェクトを削除する前に必要なクリーンアップ作業を行うための方法を確定することができました。このメソッドはされ
GCがObjectクラスの一部なので、すべてのクラスがメソッドを持っているときにオブジェクトが使用されていないと判断呼ばれます。
オブジェクト指向機能
- 抽象
- 受け継ぎます
- パッケージ
- ポリモーフィズム
基本データ型
- バイトのchar int型の短いロングダブルフロートブール
int型と整数間の差
- int型は、整数intはパッケージタイプで、基本データ型です。
ArrayListの及び貯蔵特性とベクトルとLinkedListの特性
- ArrayListのとベクトルは、クエリ速く、実装の配列に基づいていますが、ArrayListには、スレッドセーフではありません、ベクターは、スレッドである
ベクターの安全、そして第二に、パフォーマンスの低下。 - LinkedListのは、リストに基づいて、その挿入、削除、速く変化しています。
ヒープとスタックの違い
ヒープヒープ、スタックスタック。
- スタック:高速アクセスは、CPUレジスタの後に、データ・スタック領域のサイズ、および生存率は、柔軟性の欠如を決定しています。スタックデータを共有することができます
- ヒープ:動的に割り当てられたメモリのサイズ:GCヒープは、定期オブジェクトが使用中でなくなった課金されてもよいです。メモリアクセスの動的割り当てに遅いので。