Java笔试--代码纠错
package practice.javase;
public abstract class Name {
private String name;
public abstract boolean isStupidName(String name){};
}
错误:编译无法通过,原因抽象方法不能有方法体;改正,将抽象方法改为普通方法,或去掉方法体;
package practice.javase;
public abstract class Name {
private String name;
public abstract boolean isStupidName(String name);;
}
package practice.javase;
public abstract class Name {
private String name;
public boolean isStupidName(String name){
return false;};
}
package practice.javase;
public class Something {
void doSomething(){
private String s = "";
int l = s.length();
}
}
错误:编译无法通过,原因局部变量不能有权限修饰符,权限修饰符是为了设置访问权限而设定的,局部变量的访问权限已经确定是在方法体内了,故错误,改正,去掉权限修饰符;
package practice.javase;
public class Something {
void doSomething(){
String s = "";
int l = s.length();
}
}
package practice.javase;
public abstract class Something1 {
private abstract String doSomething();
}
错误:编译无法通过,原因抽象类中的抽象方法是要被其子类继承和重写的,所以权限只能是public或者protected,或者默认权限,不能使private,private不能被其他类访问,和抽象本意冲突,没有意义;
package practice.javase;
public abstract class Something1 {
abstract String doSomething();
}
package practice.javase;
public class Something2 {
public static void main(String[] args) {
Something2 something2 = new Something2();
something2.doString();
System.out.println("something2.doString return"+doString());
} public String doString(){
return "Do SomeString.....";
}
}
错误:静态方法中不能调用非静态的方法或成员变量,如果想调用,只能通过对象调用,因为他是实例方法不是类方法;
package practice.javase;
public class Something2 {
public static void main(String[] args) {
Something2 something2 = new Something2();
something2.doString();
System.out.println("something2.doString return"+something2.doString());
} public String doString(){
return "Do SomeString.....";
}
}
此处Somestring3类的文件名是OtherString.java
package practice.javase;
public class Something3 {
private static void main(String[] something_to_do){
System.out.println("Do Something....");
}
}
错误:这段代码编译不会报错,但是我们注意一个问题Somestring3类的文件名是OtherString.java,那么就一定不正确,java的机制是编译后生成.java文件,解释器解释成二进制文件
package practice.javase;
public class OtherString {
private static void main(String[] something_to_do){
System.out.println("Do Something....");
}
}
package practice.javase;
public interface A {
int x = 0;
}
package practice.javase;
public class B {
int x = 1;
}
package practice.javase;
public class C extends B implements A{
public void pX(){
System.out.println(x);
}
public static void main(String[] args) {
new C().pX();
}
}
Class C编译报错:
接口的含义理解:接口可以理解成统一的"协议",而接口中的属性也属于协议中的内容;但是接口的属性都是公共的,静态的,最终的
接口的成员特点:
A:成员变量 只能是常量。默认修饰符 public static final
B:成员方法 只能是抽象方法。默认修饰符 public abstract
推荐:永远手动给出修饰符。
在Class C中继承了B,继承了B中非私有的方法和属性,但要通过super关键字来调用父类中的成员变量和方法;
package practice.javase;
public class C extends B implements A{
public void pX(){
System.out.println(super.x);
}
public static void main(String[] args) {
new C().pX();
}
}
package practice.javase;
public interface Playable {
void play();
} package practice.javase;
public interface Bounceable {
void play();
} package practice.javase;
public interface Rollable extends Playable, Bounceable{
Ball ball = new Ball("PingPang");
} package practice.javase;
public class Ball implements Rollable{
private String name;
public Ball(String name) {
super();
this.name = name;
}
public String getName() {
return name;
} public void play(){
ball = new Ball("FootBall");
System.out.println(ball.getName());
} } 错误:编译错误,错误在ball = new Ball("FootBall");,变量未经声明,
package practice.javase;
public class Ball implements Rollable{
private String name;
public Ball(String name) {
super();
this.name = name;
}
public String getName() {
return name;
} public void play(){
Ball ball = new Ball("FootBall");
System.out.println(ball.getName());
} }
Java笔试--代码纠错的更多相关文章
- Java笔试面试题整理第八波
转载至:http://blog.csdn.net/shakespeare001/article/details/51388516 作者:山代王(开心阳) 本系列整理Java相关的笔试面试知识点,其他几 ...
- Java笔试面试题整理第六波(修正版)
转载至:http://blog.csdn.net/shakespeare001/article/details/51330745 作者:山代王(开心阳) 本系列整理Java相关的笔试面试知识点,其他几 ...
- Java笔试面试题整理第五波
转载至:http://blog.csdn.net/shakespeare001/article/details/51321498 作者:山代王(开心阳) 本系列整理Java相关的笔试面试知识点,其他几 ...
- Java笔试面试题整理第二波
转载至:http://blog.csdn.net/shakespeare001/article/details/51200163 作者:山代王(开心阳) 本系列整理Java相关的笔试面试知识点,其他几 ...
- Java笔试面试题整理第一波
转载至:http://blog.csdn.net/shakespeare001/article/details/51151650 作者:山代王(开心阳) 本系列整理Java相关的笔试面试知识点,其他几 ...
- 应聘Java笔试时可能出现问题及其答案
有感:应聘Java笔试时可能出现问题及其答案 huij 前段时间因为要参加一个笔试,在准备期间在网上找到了两条关于笔试题目的文章,其中一篇为<<有感:应聘Java笔试时可能出现问题> ...
- java静态代码块/静态属性、构造块、构造方法执行、main方法、普通代码块的顺序
java静态代码块/静态属性.构造块.构造方法执行.main方法.普通代码块的顺序 这也是在笔试中的一个重要的考点,就有一个输出语句让你写出输出的结果. 理论知识: 静态代码块是:属于类的,在类加载时 ...
- 【Java笔试】OYO校招Java工程师|牛客平台,算法:字符串翻转。附选择题解析
文章目录 1.Java笔试算法题:字符串翻转 2.单选题: 2.1.同一进程下的多个线程可以共享哪一种资源:data section 2.2.一个树形的叶结点在前序遍历和后序遍历下,可以相同的相对位置 ...
- Java 笔试面试(6)异常处理
Java 笔试面试(6)异常处理 1. finally的代码何时执行? 问题描述:try{}里有一个return语句,那么在这个try后面的finally{}中的代码是否为执行?如果会,是在retur ...
随机推荐
- C# 如何提取SaveFileDialog的保存路径?
public TestOne() { InitializeComponent(); SaveFileDialog();//调用打开SaveFileDialog 保存对话框 } #region 保存对话 ...
- 文件读取工具类读取properties文件
1.创建工具类 import java.io.IOException; import java.util.Properties; /** * * 类名称:PropertiesUtil * 类描述: 文 ...
- mvc中在Action里调用另一个Action
今天做东西时发现一个新东西.即在一个Action调用另一Action.前提是同一个控制器.(没在一个控制里的没试过) 调用方法: public ActionResult Test1(){ //to ...
- 【学习笔记】HTML基础:使用html制作网页
一.初识HTML 1.什么是HTML? Hyper Text Markup Language(超文本标记语言) 扩展XML:Extendsible Markup Language(可扩展性标记语言) ...
- 高效的jQuery代码编写技巧
缓存变量 DOM遍历是昂贵的,所以尽量将会重用的元素缓存. // 糟糕 h = $('#element').height(); $(); // 建议 $element = $('#element'); ...
- (转)原生ajax的写法
1.创建XMLHttpRequest对象 function createXMLHTTPRequest() { //1.创建XMLHttpRequest对象 //这是XMLHttpReuquest对象无 ...
- Kafka监控利器
开发过程中,kafka几乎是标配的Mq,如果有一个kafka的监控助手,哪就更完美了,常用的kafka监控工具有 KafkaOffsetMonitor .Kafka Manager.Capillary ...
- (转)防止ViewPager中的Fragment被销毁的方法
在使用ViewPager与Fragment的时候,ViewPager会自动缓存1页内的数据,如下图: 当我们当前处在页面2的时候,页面1和页面3的View实际上已经创建好了,所以在我们拖动的时候是可以 ...
- PHP 运行环境和服务器相关配置
1.在DOS命令窗口输入 mysql -hlocalhost -uroot -p回车 进入mysql数据库, 其中-h表示服务器名,localhost表示本地:-u为数据库用户名,root是mysql ...
- CCF201803-1 跳一跳
试题编号: 201803-1 试题名称: 跳一跳 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 近来,跳一跳这款小游戏风靡全国,受到不少玩家的喜爱. 简化后的跳一跳规则如下: ...