2024年2月1日发(作者:)
Java期末考试复习题
一、 选择题
1、下列概念中,不属于面向对象的是?( D )
A、对象 B、继承 C、类 D、过程调用
2、下列属于合法的Java标识符的是 ( D )
A、“ABC” B、&5678 C、++rriwo D、saler
3、下列叙述中,正确的是 ( A )
A、声明变量时必须指定一个类型
B、Java认为number与Number相同
C、Java中唯一的注释方式是“//”
D、源文件中public类可以有0个或多个
4、下列关于类型转换的说法中,正确的是 ( B )
A、将较长的数据类型转换为较短的数据类型可以用自动类型转换
B、将较长的数据类型转换为较短的数据类型只能用强制类型转换
C、强制类型转换可以保证数据完整性
D、boolean类型只能和int类型进行强制类型转换
5、按运算符操作数的数目划分,运算符?:的类型是 ( A )
A、三目 B、二目 C、一目 D、四目
6、下列代码中要求打印字符串为”second”时,x的取值范围是 ( B )
if(x>0) {n(“first”);}
else if (x>-3) {n(“second”);}
else {n(“third”);}
A、x>0 B、x<=0并且x>-3 C、x>-3 D、x<=-3
7、属于main()方法的返回类型是( C )
A、public B、static C、void D、main
8、Java语言使用的字符码集是 ( D )
A、ASCII B、 BCD C、DCB D、Unicode
9、下列关于构造方法的叙述中,错误的是( C )
A、Java语言规定构造方法名与类名必须相同
B、Java语言规定构造方法没有返回值,但不用void声明
C、Java语言规定构造方法不可以重载
D、Java语言规定构造方法只能通过new自动调用
10、每个Java小程序必须定义为 ( A )
A、Applet 类的子类 B、Jframe类的子类
C、Frame类的子类 D、Window类的子类
11、用来导入已定义好的类或包的语句是 ( B )
A、main B、 import
C、public class D、 class
12、已知:int[]a=new int[100];在下列给出的数组元素中,不正确的是( D )
A、a[0] B、a[1] C、a[99] D、 a[100]
13、阅读下列代码
public class Test2
{
public static void main(string arge[])
{on(7/2);}
}
其执行结果是。 ( A )
A、 3 B、 3.5 C、 0 D、 1
14、下列语句中,属于多分支语句的是 ( B )
A、 if语句 B、 switch语句
C、 do while语句 D、 for语句
15、下面关于子类和父类构造函数的描述中正确的是 ( A )
A、子类必须通过super关键字调用父类有参数的构造函数
B、子类必须通过this关键字调用父类有参数的构造函数
C、子类无条件地继承父类不含参数的构造函数
D、如果子类定义了自己的含参数的构造函数,就不能再调用父类的构造函数
16、下列哪个选项是合法的标识符? ( B )
A、123 B、_name C、 class D、1first
17、若有以下类声明:
public class A extends B implements C,D{}下面的说法错误的是( A )
A、这个类声明是错误的
B、类A继承自父类B
C、C和D是接口,类头的定义表明类A实现接口C和D
D、关键字extends指明继承关系
18、下列的哪个赋值语句是不正确的? ( C )
A、float d = 3.14f ; B、double d = 5.3E12;
C、float f = 11.1; D、double f=11.1E10f;
19、下列关于Java语言特点的叙述中,错误的是 ( A )
A、Java是面向过程的编程语言
B、Java支持分布式计算
C、Java是跨平台的编程语言
D、Java支持多线程
20、下列关于继承的哪项叙述是正确的? ( D )
A、在java中允许多重继承
B、在java中一个类只能实现一个接口
C、在java中一个类不能同时继承一个类和实现一个接口
D、java的单一继承使代码更可靠
21、已知有下列类的说明,则下列哪个语句是正确的? ( A )
public class Test
{ private float f = 1.0f; int m = 12; static int n=1;
public static void main(String arg[])
{ Test t = new Test(); }
}
A、t.f; B、this.n; C、Test.m; D、Test.f;
22、在Java中,负责对字节代码解释执行的是 ( B )
A、垃圾回收器 B、虚拟机 C、编译器 D、多线程机制
23、下列叙述中,正确的是 ( A )
A、Java语言的标识符是区分大小写的
B、源文件名与public类名可以不相同
C、源文件名其扩展名为.jar
D、源文件中public类的数目不限
24、在 Java 中,由Java编译器自动导入,而无需在程序中用import导入的包是
( D )
A、 B、 C、 D、
25、若数组a定义为int[][]a=new int[3][4],则a是 ( B )
A、一维数组 B、二维数组 C、三维数组 D、四维数组
27、int 型 public 成员变量 MAX_LENGTH,该值保持为常数100,则定义这个变量的语句是 ( C )
A、public int MAX_LENGTH=100
B、final int MAX_LENGTH=100
C、public final int MAX_LENGTH=100
D、public const int MAX_LENGTH=100
28、下列哪个类声明是正确的? ( D )
A、 abstract final class HI{···}
B、 abstract private move(){···}
C、 protected private number;
D、 public abstract class Car{···}
29、为了区分重载的方法,要求 ( A )
A、 采用不同的形式参数列表
B、 返回值类型不同
C、 参数名不同
D、 选项A、B、C都对
30、下列命题中,错误的是 ( A )
A、Java编程时,要求应尽量多用公共变量
B、Java编程时,要求应尽量少用公共变量
C、Java编程时,要求应尽量不用公共变量
D、Java编程时,要求应尽量使用私有变量
31、推出Java语言的公司是 ( D )
A. IBM B. Apple C. Microsoft D. Sun
32、为类定义多个名称相同、但参数不同的方法的做法称为 ( A )
A. 方法重载 B. 方法覆盖 C.方法继承 D. 方法重用
33、在子类中重新编写父类方法的做法称为 ( B )
A. 方法重载 B. 方法覆盖 C.方法继承 D. 方法重用
34、如果子类没有定义构造方法,则继承父类的 ( D )
A. 所有构造方法 B. 所有带参数的构造方法
C. 所有方法 D. 无参数的构造方法
35、定义类时,使用的关键字是 ( A )
A. class B. struct C. union D. array
36、在类的修饰符中,规定只能被同一包类所使用的修饰符是 ( B )
A. public B. 默认 C. final D. abstract
37、用abstract修饰的类称为 ( B )
A. 静态类 B. 抽象类 C. 最终类 D. 公有类
38、下列关于构造方法的特点描述中,错误的是 ( A )
A. 不可重载 B. 方法名同类名 C. 无返回类型 D. 系统自动调用
39、如果在子类中需要调用父类的带参数构造方法,可以通过super( )调用所需的父类构造方法,且该语句必须作为子类构造方法中的( A )
A. 第一条语句 B. 第二条语句 C. 第三条语句 D. 任意位置
40、下列关于静态方法的描述中,错误的是 ( D )
A. 在类体内说明静态方法使用关键字static
B. 静态方法只能处理静态变量或调用静态方法
C. 静态方法不占用对象的内存空间,非静态方法占用对象的内存空间
D.静态方法只能用类名调用
41、下列关于抽象类的描述中,错误的是 ( C )
A. 抽象类是用修饰符abstract说明的
B. 抽象类是不可以定义对象的
C. 抽象类是不可以有构造方法的
D. 抽象类通常要有它的子类
42、下列关于继承性的描述中,错误的是 ( D )
A. 继承是在已有类的基础上生成新类的一种方法
B. 子类继承父类的所有非私有成员
C. Java语言要求一个子类只有一个父类
D. 父类中成员的访问权限在子类中将被改变
43、下列关于类的继承的描述中,错误的是 ( B )
A、一个子类只允许一个父类
B、一个父类只能生成一个子类
C、继承不改变成员权限
D、私有成员和构造方法不能继承
44、下列关于接口的描述中,错误的是 ( B )
A. 接口实际上是由常量和抽象方法构成的特殊类
B. 一个类只允许继承一个接口
C. 定义接口使用的关键字是interface
D. 在继承接口的类中通常要给出接口中定义的抽象方法的具体实现
45、下列关于方法的描述中,错误的是 ( A )
A. 方法只有类的成员方法,再无其他方法
B. 方法可以重载和内联
C. 对象作为方法参数时,参数传递的是对象地址值
D. 方法的返回值是通过return来实现的
46、用于修饰类的访问修饰符是 ( A )
A. public B. private C. protected D. static
47、用final修饰的类称为 ( C )
A. 静态类 B.抽象类 C.最终类 D.公有类
48、不能用new运算符创建对象的类是 ( B )
A. 静态类 B. 抽象类 C.最终类 D.公有类
49、如果希望方法不能在子类中更改,定义方法时要使用的修饰符是(B )
A. static B. final C. abstract D. native
50、如果希望直接通过类名访问方法,在定义时要使用的修饰符是 ( A )
A. static B. final C. abstract D. native
51、如果类中没定义构造方法,系统会提供一个默认的构造方法。默认构造方法的特点是
( C )
A. 无参数有操作 B. 有参数有操作
C. 既无参数也无任何操作 D.有参数有参数
52、一个方法在定义过程中又调用自身,这种方法称为 ( B )
A. 构造函数 B. 递归函数 C. 成员函数 D. 抽象函数
53、在子类中重新编写父类方法的做法称为 ( B )
A. 方法重载 B. 方法覆盖 C.方法继承 D. 方法重用
54、下列关于静态成员的描述中,错误的是 ( D )
A. 静态成员有成员变量和方法两种
B. 静态成员的修饰符是static
C. 静态成员可以使用类名访问,也可以使用对象名来访问
D. 静态方法可以访问静态成员变量,也可以访问非静态成员变量
55、下列关于类的继承的描述中,错误的是 ( B )
A. 一个子类只允许一个父类
B. 一个父类只能生成一个子类
C. 继承不改变成员权限
D. 私有成员和构造方法不能继承
56、下列对封装性的描述中,错误的是 ( B )
A、封装体包含了属性和行为
B、封装体中的属性和行为的访问权限是相同的
C、被封装的某些信息在封装体外是不可见的
D、封装使得抽象的数据类型提高了可重用性
59、定义接口的关键字是 ( A )
A. interface B. implements C. extends D. abstract
60、在成员变量的修饰符中,规定只允许该类自身访问的修饰符是( A )
A. private B. public C. 默认 ted
二、填空题
1、Java 编译后产生字节码文件,该文件通过 虚拟机 解释执行。
2、接口可以看作是仅包括 抽象 方法、常量,而又不能直接生成对象的特殊抽象类。
3、Java 语言的循环语句包括 for 语句、do-while 语句和 while 语句。
4、Java 中处于类层次关系中最上层的类是 Object 类,它是Java 中所有类的祖先类,也称为根类或基类。
5、在 java中,如果小数后没有任何字母,计算机默认的数据类型是 double 。
6、构造函数的方法名必须与 类 名相同。使用运算符 new 创建类的对象,给对象分配内空间。
7、如果子类中的某个方法的方法头与它的父类的某个方法的方法头完全一样,但方法实现的功能不同,称为子类对父类中同名方法的 覆盖 。
8.同一个类中多个方法具有相同的方法名,不同的参数列表称为方法的 重载 。
9.Java源程序的编译命令是 javac 。
10、在一个Java源文件中定义了2个类,每个类中都有5个方法,编译该java源文件时会产生
2个字节码文件,其扩展名为 class 。
11、在Java语言中,逻辑常量只有 true 和 false 两个值。
12、面向对象的软件开发方法用 类 把数据和基于数据的操作封装在一起。
13、面向对象技术中,作为对象的基本属性之一的状态,在计算机实现中用对象的
成员变量的值表示。
14、如果一个Java 源程序文件只定义有一个类,该类的的类名为MyFristApplet,则存储该源程序的文件名必须是 。
15、Java源程序中只能有一个 public 类,其它类的个数不限。
16、接口中定义的抽象方法,其默认的访问权限为 public 。
17.子类通过关键字 super 调用父类中被覆盖的同名方法。
18、一个Java程序可以定义多个类,但只能有一个 public 类。
19、在类中可以定义多个具有相同名称、但参数不同的方法,这种做法称为 方法重载 。
20、 Object 是Java类库中所有类的父类。
21、如果子类定义的成员变量与父类的成员变量同名,要表明使用的是父类的成员变量,可以在成员变量前加上关键字 super 。
22、 new 运算符的作用是根据对象的类型分配内存空间。
23、定义一个Java类时,通过关键字 extends 指明该类的父类。
24、一个类可以有 1 个父类。
25、当子类使用父类的同名成员变量,必须用关键字 super 说明。
26、用public修饰的类称为 公共类 。
27、定义子类时,如果没有指出父类,则该类的默认父类为 Object 类。
三、判断题
1、在Java 源程序文件中可以有多个类,其文件名必须和第一个类名相一致。
( F )
2、在Java源程序文件中必须要有main()方法,它是程序执行的入口。
( F )
3、java 的单一继承使代码更可靠。 ( T )
4、Java程序的源文件名与public类的名称相同,后缀可以是java或txt等。
( F )
5、在java中允许多重继承。 ( F )
6、Java语言的标识符是区分大小写的。 ( T )
7、在 Java 中,由Java编译器自动导入,而无需在程序中用import导入的包是。
( F )
8、方法体中的局部变量必须先赋值后才能使用。 ( T )
9、接口中的方法都是抽象方法。 ( T )
10、抽象类也可以实例化。 ( F )
11、在 Java 中,表示换行符的转义字符是 “n”。 ( T )
12、在 Java 中,能实现多重继承效果的方式是接口。 ( T )
13、java 的应用程序和小程序都必须使用java命令运行。 ( F )
14、在Java程序中import语句必须有一个。 ( F )
15、Java为移动设备提供的平台是J2SE。 ( F )
16、如果一个方法是抽象的,那么它所在的类必定是抽象类,反之如果一个类是抽象的,它其中的方法必定是抽象方法。 ( F )
17、同一个类的对象之间可以赋值,且它们分别代表不同的对象。 ( F )
18、子类无条件地继承父类不含参数的构造函数。 ( F )
19、方法的覆盖与方法的重载是两个相同的概念。 ( F )
20、重载的构造函数之间可以通过关键字this在构造函数的任意位置相互调用。
( F )
21、Java提供了许多系统定义类,用户可以直接使用。 ( F )
22、final 类可以有子类。 ( F )
23、没有分配内存空间的对象不能使用。 ( T )
24、抽象类中的抽象方法需要在其子类中编写方法内容。 ( T )
25、不可以为类定义多个构造函数。 ( F )
26、class不是定义类的唯一关键字。 ( F )
27、Java语言只支持单重继承,不支持多重继承。 ( T )
28、Java语言中,对象成员的表示只使用运算符“.”。 ( T )
29、抽象方法一定出现在抽象类中。 ( F )
30、对象可以作方法参数,对象数组不能作方法参数。 ( F )
31、Java语言中,所创建的子类都应有一个父类。 ( T )
32、Java语言中,类的继承是可以传递的。 ( T )
33、Object类是所有类的父类。 ( T )
34非静态方法中不能引用静态变量。 ( F )
35、抽象方法仅有方法头,而无方法体。 ( T )
36、使用运算符new创建对象时,赋給对象的值实际上是一个地址值。( T )
37、调用this或super的构造方法的语句必须放在第一条语句。 ( T )
38、一个子类不能既是子类又是父类。 ( F )
39、子类可以继承父类的所有成员。 ( F )
40、子类只能继承父类成员,不能修改父类成员。 ( F )
四、把下列程序补充完整。
1. public class A (1) extends B
{
public static void main(String args[])
{
A a=new A();
2();
}
public void myfunc1()
{n("myfunc1");}
public void myfunc2()
{
(2) this .myfunc1();
(3) super .myfunc2();
}
}
(4) abstract class B
{
abstract public void myfunc1();
public (5) void myfunc2()
{n("myfunc2");}
}
2.下列程序中,要求计算1+2+ …..+100的值,显示计算结果,程序运行输出结果如下:sum=5050
public class A
{
public static void main(String[] args)
{
A a=new A();
();
}
public void method()
{
int sum;
(1) sum=0;
for(int i=1;i<=100;i++)
{
(2) sum=sum+i;
}
(3) n(“sum=”+sum);
}
3.下面程序定义了一个数组,并将它的每个元素赋值为元素所对应的下标,然后求数组所有元素的和,请将程序补充完整。
public class A
{
public static void main(String args[])
{
(1) int[] a;
a=new int[6];
int total=0;
for(int j=0; (2) j< ;j++)
a[j]= (3)j ;
for(int i=0;i<; (4)i++ )
total+= (5)a[i] ;
n(total);
}
}
4.
interface B
{
double area();
}
public class A (1)implements B
{
double r;
A(double r)
{ (2)this.r=r; }
public double area()
{ (3)return *r*r;}
}
class C
{
public static void main(String args[])
{ A a=new (4)A (10);
n(());
}
}
5.public class FirstApp
{
final int x=5; // 定义一个常量
public static void main (String[] args) // 主方法
{
System .n("你好java!"); // 打印语句
}
}
6.interface B
{
int k=5;
void myMethod();
}
public class A implements B // 实现接口
{
public void myMethod() // 实现抽象方法
{
n("你好java!");
}
7. class Myclass
{
private int y=5; //定义y为私有变量
public static int x=4; // 定义静态变量
public void show() //定义show()为公有方法
{
y++;
n("y="+y);
}
}
8.public class FirstApplet extends Applet
{
public void paint(Graphics g)
{
Font f1 = new Font("黑体",,30);
g .drawString("欢迎学习java语言!",20,40);
}
}
五、回答下列问题
1.类中定义的变量和方法体中定义的变量的区别是什么?
1) 类中定义的变量为全局变量,其有效范围为整个类体,方法中定义的变量为局部变量,其有效范围为方法体。
2)类中的变量分为静态变量和类的成员变量
3)类中的变量由构造函数赋初值,方法中的变量必须先赋值后使用
2.构造函数和普通方法的区别是什么?
1)构造函数其方法必须与生成对象的类名相同,而方法的名字只要符合标识符的命名规则就行,一般首字母小写。
2) 构造函数没有返回值类型,而方法必须要有返回值类型。无参的构造函数由系统自动提供。
3.抽象类和接口有何区别?
1)接口中定义的方法都是抽象方法,定义的变量都是静态常量,使用关键字interface定义接口,类使用关键字implements实现接口。Java通过引入接口实现了多重继承。
2)抽象类是用关键字abstract修饰的类,在抽象类中可以定义普通方法和抽象方法,
甚至可以没有抽象方法;还可以定义变量和常量。子类通过extends关键字继承抽象类。
3)一个类可以实现多个接口,但抽象类必须是单继承。
4.什么是方法覆盖?
子类重新定义从父类继承来的同名方法称为方法覆盖。子类覆盖父类的同名方法时,方法头应该与父类一样,只是方法体不一样,从而完成满足子类要求的、与父类的同名方法不同的功能。
5.定义类A和类B如下:
public class A
{
public static void main(String args[])
{ A a=new A();}
A ()
{("A");}
A(int i)
{ this(); ("AA");}
}
class B extends A
{ B() { super(); ("B"); }
B(int i) {super(i); ("BB"); }
}
(1)程序的输出结果是什么? A
(2)若将main()方法中语句改为:B b=new B(),程序的输出结果是什么? AB
(3)若将main()方法中语句改为:B b=new B(1),程序的输出结果是什么?AAABB
六、程序设计题
1.编写一个重载的方法area,用来求圆的面积,矩形的面积,正方形的面积,返回值类型与参数类型一致,在应用程序中使用这三个方法,并输出结果。
参考代码
public class A
{
double area(double r)
{return 3.14*r*r;}
int area(int x,int y)
{return x*y;}
int area(int r)
{return r*r;}
}
class B
{
public static void main(String [] args)
{
A a=new A();
n("圆的面积是:"+(1));
n("矩形的面积是:"+(1,2));
n("正方形的面积是:"+(1));
}
}
2.请按如下要求定义两个类A和B,类A中定义一个int类型变量z(将其赋值为16)、一个char类型变量x(将其赋值为65)和一个方法myPrint(),该方法的功能是在屏幕上输出z和x的值。类B是类A的子类,其中定义了一个double类型的变量y(将其赋值为16.0)和String类型的对象s(将其赋值为java program!),还定义了两个方法myPrint()和printAll(),方法myPrint()的功能是在屏幕上输出y和s的值,方法printAll()的功能是分别调用父类和子类的方法myPrint()。编写一个应用程序,创建类B的对象b,调用printAll()方法用来显示z、x、y、s的值。
参考代码
public class A
{
int z=16;
char x=65;
void myPrint()
{n(z);n(x);}
}
class B extends A
{
double y=16.0;
String s="java program!";
void myPrint()
{n(y);n(s);}
void printAll()
{myPrint(); t();}
}
class C
{
public static void main(String [] args)
{
B b=new B(); ll();
}
}
3.编写三个重载的方法cube,用来求一个数的立方,参数分别是int类型、float类型、double类型。编写应用程序,调用这三个方法。(提示:只定义一个测试类OverLoad,类中有主方
法和重载的三个方法)
public class OverLoad
{
public static void main (String[] args)
{
int x1=5;
float x2=5.5f;
double x3=3.6;
n(x1+"的立方="+cube(x1));
n(x2+"的立方="+cube(x2));
n(x3+"的立方="+cube(x3));
}
public static int cube(int x)
{
return x*x*x;
}
public static float cube(float x)
{
return x*x*x;
}
public static double cube(double x)
{
return x*x*x;
}
}
4.按照下面的要求实现:
定义一个家具类Furniture
• 保护成员变量:颜色color (String)、宽度weight(double) 、高度height(double)
• 一个抽象方法: String gongNeng( )
• 两个构造方法:一个不带参数,一个带参数
• 一个打印方法:public String toString(),用来生成要打印的信息
2. 派生一个椅子类Chair:继承了父类的成员
• 私有成员变量: 腿数 legCount(int)
• 实现抽象方法: String gongNeng( ) 给出椅子的描述
• 两个构造方法: 一个不带参数,一个带参数
• 一个打印方法:public String toString(),用来生成要打印的信息
3. 编写测试类TestChair,分别创建不带参数和带参数的Chair对象,并输出信息。
public abstract class Furniture
{
protected String color;
protected double weight;
protected double height;
Furniture()
{ }
Furniture(String str,double d1,double d2)
{
color=str;
weight=d1;
height=d2;
}
abstract public String gongNeng( );
public String toString()
{
return "颜色:"+color+"t长度:"+weight+"t高度:"+height;
}
}
//
public class Chair extends Furniture
{
private int legCount;
public Chair()
{ }
public Chair(String str,double d1,double d2,int i)
{
super(str,d1,d2);
legCount=i;
}
public String gongNeng()
{
return "这是家用的!";
}
public String toString()
{
return ng()+"t桌腿数:"+legCount+"t"+gongNeng();
}
}
//
public class TestChair
{
public static void main (String[] args)
{
Chair C1=new Chair("棕色",0.9,0.8,4);
n(ng());
功能
}
}
七、阅读程序
1. 分析程序的输出结果
public class Class1
{
public static void main (String[] args)
{
int a=20, b=50,c=100,d;
final int e=5;
a%=9; b/=7; c%=b; d=a+b+c;
n("a="+a);
n("b="+b);
n("c="+c);
n("d="+d);
n("e="+e);
}
}
输出结果是:
a=2
b=7
c=2
d=11
e=5
2. 分析程序的输出结果
class Father
{ int x=5;
public void output()
{ n(“ x of Father is: ”+x); }
}
class Son extends Father
{ int x=6;
public void output(int x)
{ n(“ x of Son is: ”+this.x);
n(“ x of parameter is: ”+x);
n(“ x of Father is: ”+super.x); }
public void show()
{ (); }
}
class MyClass
{
}
public static void main(String args[])
{ Father obfather = new Father();
();
Son obson = new Son();
(7);
();
}
输出结果是:x of Father is :5
x of Son is :6
x of Parameter is :7
x of Father is :5
x of Father is :5
3. 分析程序的输出结果
class Usethis
{
int x=4;
void show1()
{
int x=3;
n(x); n(this.x);
}
void show2(int x)
{
n(x);
this.x = x;
n(this.x);
}
}
class MyClass
{
public static void main(String args[])
{
Usethis ob = new Usethis();
n (ob.x);
1();
2(2);
}
}
输出结果是: 4
3
4
2
2
4. 分析程序的输出结果
class A
{
static int a=100;
static int Twoa() {return a*2;}
static void myPrint() { n (a);}
}
public class Output1
{
public static void main (String[] args)
{
n("a="+A.a);
n("2*a="+());
t();
A.a=10;
n("2*a="+());
t();
}
}
输出结果是: a=100
2*a=200
100
2*a=20
10
本文发布于:2024-02-01 04:44:17,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170673385733949.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |