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 ...
随机推荐
- 《本博客将搬至CSDN》 博客主QQ 654436731 有关于本博客任何文章的问题欢迎打扰
地址 http://blog.csdn.net/sajiazaici
- Django组件——cookie与session
一.会话跟踪技术 1.什么是会话跟踪技术 可以把会话理解为客户端与服务器之间的一次会晤,在一次会晤中可能会包含多次请求和响应. 在JavaWeb中,客户向某一服务器发出第一个请求开始,会话就开始了,直 ...
- 检测IE浏览器兼容Edge模式及IE11
document.documentMode || +(navigator.userAgent.match(/MSIE (\d+)/) && RegExp.$1) 判断布尔值
- 数据结构复习之C语言指针与结构体
数据结构指针复习: #include <stdio.h> void main() { ] = {, , , , }; // a[3] == *(3+a) printf(+a)); // a ...
- .NET开源工作流RoadFlow-表单设计-日期时间选择
在表单中添加一个日期时间选择框: 选择范围:指定一个日期选择范围. 时间:是否允许选择时间.
- JSP初学者4
Filter可认为是Servlet的“加强版”,他主要用于对用户请求进行预处理,也可以对HttpServletResponse进行后处理,是个典型的 处理链. 使用Filter完整的流程是:Filte ...
- jQuery判断checkbox是否选中?操作checkbox(不)选中?
HTML <form action=""> <input type="checkbox" name="c ...
- pdf2swf 转换时报错。This file is too complex to render- SWF only supports 65536 shapes at once
在使用swftools转换pdf 到swf的时候报错,有如下说明:if the pdf contains too many images / shapes, pdf2swf will fail wit ...
- jmeter中CSV Data Set Config各项说明
Config the CSV Data Source: 1)Filename:csv文件的名称(包括绝对路径,当csv文件在bin目录下时,只需给出文件名即可) 2)File encoding:csv ...
- django视图函数解析(三)
1 视图views概述 1 作用: 视图接受web请求并响应web请求 2 本质: 视图就是python中的处理函数 3 响应: 一般是一个网页的HTML内容.一个重定向.错误信息页面.json格式的 ...