コンパイルされたCCATスタディテストJAVAテストの質問は次のとおりです。
1.空欄に記入します(空欄ごとに2ポイント、合計20ポイント)。
1.インラインラベルをブロックラベルに変換するためのCSSスタイルはdisplay:block
です。
2.式19/3 * 3 + 19%3の値は19
です。
3.static
静的変数修正変数と呼ばれ、2つの方法で受け渡し对象
と类名
アクセスが可能です。
4.メソッドがメソッドとして変更された重写 / final
場合、このメソッドをオーバーライドすることはできません。
5.次のコードの出力は次のとおりです。ABC
public class Test {
public static void main(String[] args) {
LinkedList list = new LinkedList();
list.add("A");
list.add("B");
list.add("C");
list.add("D");
list.add("E");
list.add("F");
for (int i = 0; i < list.size(); i++) {
//poll 获取并移除列表的头
System.out.println(list.poll());
}
}
}
- 出力後のIとJの値は
100
、それぞれ0
。
public class Test {
public static void main(String[] args) {
int j = 0;
int i = 0;
for(;i<100; i++){
j = j++;
}
System.out.println(i);
System.out.println(j);
}
}
- 次のJavaコードを分析した結果は次のとおりです。
7
public class Point {
int x,y;
Point(int x,int y){
this.x=x;
this.y=y;
}
public static void main(String[] args){
Point pt1,pt2;
pt1=new Point (3,3);
pt2=new Point(4,4);
System.out.print(pt1.x+pt2.x);
}
}
2.複数選択の質問(この大きな質問では20のサブ質問、各サブ質問に2ポイント。合計40ポイント)。
-
Tomcatのポート番号は、(
A
)ファイルの(A
)ノードを変更することで構成できます。
A:server.xml
B:web.xml
C:server.xml
D:web.xml -
Javaでは、クラスとオブジェクトについて、次のステートメントのどれが正しいですか(
A
)。
A:クラスは概念モデルを定義し、オブジェクトは実体です
B:オブジェクトは概念モデルを定義し、クラスは実体です
C:クラスはオブジェクトのサブセットです
D:オブジェクトはクラスのサブセットです -
Javaでは、Statementインターフェイスに多くの基本的なデータベース操作メソッドが含まれています。次のステートメントは正しくありません(
B
)。
A:ResultSet executeQuery(String sql):SQLステートメントを実行してResultSetオブジェクトを取得できます
B:boolean executeUpdate(String sql):挿入、削除、更新などの操作を実行できます
。C:boolean execute(String sql):任意のSQLステートメントを実行できます。 SQLステートメントが正常に実行されたかどうかを示します
D:int executeUpdate(String sql):挿入、削除、更新、およびその他の操作を実行できます -
Javaクラスに次のメイン関数が含まれている場合、このクラスをコンパイルして実行した結果は(
C
)になります。
A:コンパイルエラーが1行
目に表示されますB:コンパイルエラーが2行目に表示されます
C:コンパイルエラーが3行目に表示されます
D:プログラムは正しく実行され、出力結果は次のようになります:a + b = 17.2
public static void main(String args[]) {
double a = 10.2; //第1行
int b = 7, result; //第2行
result = a + b; //第3行
System.out.println("a+b=" + result);
}
-
Javaでは、次のオプションの誤ったステートメントは(
D
)です。
A:java.util.Randomクラスを使用してランダムな数値を生成します
B:java.util.RandomクラスのnextInt()メソッドは、このランダムジェネレータシーケンスで均一に分散されたint値を返します
C:java.util.RandomクラスのnextInt(このメソッドは、このランダムジェネレータシーケンスで0(包括的)と指定された値(排他的)の間に均一に分散されたint値を返します
。D:実行コード:System.out.println(new java.util.Random()。nextInt (10)+1);出力値を10にすることはできません -
次のJavaScriptコードがあります。ページの実行後、出力(
C
)します。
A:abc
B:0
C:NaN
D:ページにエラーが報告され、実行できません
<script type=“text/javascript”>
var x=parseInt("abc");
document.write(x);
</script>
-
JSPページで、次の(
C
)ステートメントを使用すると、クラスjava.util.DateをJSPページに導入できます。
A:<%page import =“ java.util.Date”%>
B:<%@ page import =“ java.util.Date” @%>
C:<%@ page import =“ java.util.Date”% >
D:<%@ import =“ java.util.Date”%> -
JSPでは、Cookieに関する次の説明が間違っています(
C
)。
A:Cookieはクライアントにユーザー関連のデータを保存するためのものです
B:Cookieは文字列を保存できます
C:Cookieはあらゆるタイプのオブジェクトを保存できます
D:より重要または機密性の高いコンテンツをCookieに保存することはお勧めしません -
JSPでは、転送とリダイレクトに関する次の記述は正しいです(
B D
)。
A:転送またはリダイレクトに関係なく、新しいURLアドレスがクライアントブラウザに表示されます
。B:リダイレクトは、ブラウザが少なくとも2つの要求を送信することで理解できます。ページリダイレクトを実現するために新しいアドレスを要求することにより、クライアント側で役割を果たします
。C:転送とリダイレクトはリクエスト範囲内でデータを共有できます
。D:転送はリクエストのgetRequestDispatcher()。forward()メソッドを介して実現できます。その機能は、複数のページの相互作用中に要求データの共有を実現することです -
HTML Ajaxワークフローに関して、正しいステートメントは(
B
)です。
A:サーバー側がjsイベントを生成します
。B:XMLHttpRequestオブジェクトを作成する必要があります
。C:サーバー側が要求を処理した後、プレーンテキストで返す必要があります
。D:XMLHttpRequestオブジェクトには4つの応答状態があります。 -
次のプログラムを注意深く分析してください。whileのサイクル時間は(
D
)
A、1 B、10 C、6 D、無限ループ、回数は決定できません
int i=0;
while(i<10) {
if(i<1) continue;
if(i==5) break; i++;
}
-
オーバーロードされた多態性で同じ名前の異なるメソッドを区別するには、次のことが必要です:(
B
)。
A)異なるパラメータ名B)異なる正式なパラメータリスト
C)異なる戻り値タイプD)オプションA、B、Cは大丈夫です -
次のうち、コレクションのサブインターフェイスではないものはどれですか?(
C
)。
A)リストB)セットC)マップD)SortedSet -
次の説明のうち正しいものはどれですか(
C
)
A。クラス内のコンストラクターは省略できません
B。コンストラクターはクラスと同じ名前にする必要がありますが、メソッドはクラス
Cと同じ名前にすることはできません。コンストラクターは、オブジェクトが新しい
Dのときに実行されます。クラスは1つのコンストラクターのみを定義できます -
CSSスタイルのbackground-position:5px -10pxの意味は(
D
)です。
A。背景画像は、左に5ピクセル、下に10ピクセルオフセットされてい
ます。B。背景画像は、左に5ピクセル、上に10ピクセルオフセットされてい
ます。C。背景画像は、右に5ピクセル、下に10ピクセルオフセットされてい
ます。背景画像は右に5px、上に10pxオフセットされています -
次の説明のうち正しいものはどれですか?
D
A。マルチスレッドはJava言語
Bに固有のものです。マルチスレッドには複数のCPUが必要です
C。マルチスレッドでは、コンピューターに単一のCPUDが必要です
。Java言語はマルチスレッドをサポートします -
次のコードの実行結果はどうなりますか?
C
A。large.txtファイルはローカルハードディスク
Bに作成されます。パスセパレータが正しくないため、Unixシステムでは失敗し
ます。C。large.txtファイルはローカルハードディスク
Dに作成されません。large.txtファイルがすでに存在する場合、例外がスローされます
public class Example {
public static void main(String[] args) {
File f = new File("c:\\large.txt");
}
- 次のコード操作結果を選択してください?(
C
)
A、0
B、1
C、2
D、3
public class test {
public static void main(String args[]) {
int i=0, j=2;
do {
i=++i;
j--;
} while(j>0);
System.out.println(i);
}
}
- 次のコード操作結果を選択してください?(
A
)
A、コンパイルエラー
B、実行エラー
C、null
D、 ""
Character c1=-13;
Character c2=-13;
System.out.println("c1==c2"+(c1==c2));
- カスタムクラスアカウント、このタイプのオブジェクトアカウントを作成します。どのオプションがクラスオブジェクトを正しく返すことができませんか?(
A
)
A、account.class
B、Account.class
C、account.getClass()
D、Class.forName( "Account")
3.エッセイの質問(合計40ポイント)。
- 抽象クラスとインターフェースの類似点と相違点は何ですか?(6点)
回答:抽象类和接口都不能够实例化,但可以定义抽象类和接口类型的引用。一个类如果继承了某个抽象类或者实现了某个接口都需要对其中的抽象方法全部进行实现,否则该类仍然需要被声明为抽象类。接口比抽象类更加抽象,因为抽象类中可以定义构造器,可以有抽象方法和具体方法,而接口中不能定义构造器而且其中的方法全部都是抽象方法。抽象类中的成员可以是private、默认、protected、public的,而接口中的成员全都是public的。抽象类中可以定义成员变量,而接口中定义的成员变量实际上都是常量。有抽象方法的类必须被声明为抽象类,而抽象类未必要有抽象方法。
- 要素にアクセスするときのList、Map、およびSetの3つのインターフェイスの特徴は何ですか?(6点)
回答:List以特定索引来存取元素,可以有重复元素。Set不能存放重复元素(用对象的equals()方法来区分元素是否重复)。Map保存键值对(key-value pair)映射,映射关系可以是一对一或多对一。Set和Map容器都有基于哈希存储和排序树的两种实现版本,基于哈希存储的版本理论存取时间复杂度为O(1),而基于排序树版本的实现在插入或删除元素时会按照元素或元素的键(key)构成排序树从而达到排序和去重的效果。
- StatementとPreparedStatementの違いは何ですか?どちらが良いですか?(6点)
回答:与Statement相比,①PreparedStatement接口代表预编译的语句,它主要的优势在于可以减少SQL的编译错误并增加SQL的安全性(减少SQL注射攻击的可能性);②PreparedStatement中的SQL语句是可以带参数的,避免了用字符串连接拼接SQL语句的麻烦和不安全;③当批量处理SQL或频繁执行相同的查询时,PreparedStatement有明显的性能上的优势,由于数据库可以将编译优化后的SQL语句缓存起来,下次执行相同结构的语句时就会很快(不用再次编译和生成执行计划)。 补充:为了提供对存储过程的调用,JDBC API中还提供了CallableStatement接口。存储过程(Stored Procedure)是数据库中一组为了完成特定功能的SQL语句的集合,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。虽然调用存储过程会在网络开销、安全性、性能上获得很多好处,但是存在如果底层数据库发生迁移时就会有很多麻烦,因为每种数据库的存储过程在书写上存在不少的差别
- リクエストの転送とリダイレクトの違い(6ポイント)
回答:
1、重定向是两次请求,转发是一次请求,因此转发的速度要快于重定向
2、重定向之后地址栏上的地址会发生变化,变化成第二次请求的地址,转发之后地址栏上的地址不会变化,还是第一次请求的地址
3、转发是服务器行为,重定向是客户端行为。重定向时浏览器上的网址改变 ,转发是浏览器上的网址不变
4、重定向是两次request,转发只有一次请求
5、重定向时的网址可以是任何网址,转发的网址必须是本站点的网址
- メソッドの記述パラメーターa、b、cを指定して、y = ax ^ 2 + bx + c(8ポイント)の2次方程式のルートを見つけます。
ヒント:△= b 2-4ac値、△が0未満の場合、1つの変数を持つ2次方程式根なし。△が0に等しい場合、1変数の2次方程式には2つの等しい根があります。△が0より大きい場合、1変数の2次方程式には2つの等しくない実根があります( ' 'は二乗を意味します)
答:
{
public static void main(String [] args){
Scanner sc = new Scanner(System.in);
System.out.println("输入2次方的系数");
int a = sc.nextInt();
System.out.println("输入1次方的系数");
int b = sc.nextInt();
System.out.println("输入0次方的系数");
int c = sc.nextInt();
//判断方程是否有解
if((b*b - 4*a*c)<0){
System.out.println("方程无解!");
return;
}
else{
System.out.println("方程有解!");
}
double x1 = (-b + Math.sqrt(b*b - 4*a*c))/2*a;
double x2 = (-b - Math.sqrt(b*b - 4*a*c))/2*a;
System.out.println("根分别是 " + x1 + "\t" + x2);
}
}
- 「ゴーストバレーの推測」を確認します。任意の自然数の場合、奇数の場合は3を掛けて1を加算します。偶数の場合は、2で割って新しい数を取得し、上記の計算ルールに従って計算を実行し、続行します。続行すると、最終的に1が得られます。(8ポイント)
答:
import java.util.Random;
/**
* @Author: 老张
* @Date: 2020/10/22 8:44
*/
public class Test {
public static void main(String[] args) {
/*
* 验证“鬼谷猜想”:对任意自然数,若是奇数,
* 就对它乘以3再加1;若是 偶数,就对它除以2,
* 这样得到一个新数,
* 再按上述计算规则进行计算,
* 一直进 行下去,最终必然得到1。 */
int num;
Random rd=new Random();
//Integer.MAX_VALUE为最大的整数
num=1+rd.nextInt(Integer.MAX_VALUE);//产生数的范围-2[31]----2[31]-1
//System.err.println(rd.nextInt(100));//产生数>=0且<100
System.out.println("原本的数为"+num);
while(num!=1){
System.out.println("产生的新数是"+num);
if(num%2==0){
//偶数
num=num/2;
}
else{
num=num*3+1;
}
}
System.out.println(num);
}
}