java基础非常重要,最近一段时间面试碰到的问题,现在做了个总结
1、关于接口方面
1-1、接口中的所有属性都是final类型的
1-2、接口中不能含有静态方法,抽象类中也不能。可以总结为,static方法只能存在于具体实现类中(static,abstract 不能同时修饰一个方法)
2、关于构造函数
2-1
class MyClass2{
public static void main(String[] args) {
new MyClass2();
}
public MyClass2() {
MyClass2 m1=this;
MyClass2 m2=this;
synchronized (m1) {
System.out.println("enter in synchronized");
try {
m2.wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
System.out.println("class load all");
}
}
以上程序运行后会一直阻塞
2-2、
class MyClass2{
public static void main(String[] args) {
new MyClass2();
}
public MyClass2() {
System.out.println("...");
MyClass2 m=new MyClass2();
// MyClass2 m1=this;
// MyClass2 m2=this;
// synchronized (m1) {
// System.out.println("enter in synchronized");
// try {
// m2.wait(3000);
// } catch (InterruptedException e) {
// e.printStackTrace();
// }
// }
// System.out.println("class load all");
}
}
以上函数运行一段时间后会抛出java.lang.StackOverflowError,堆栈溢出,若换成以下版本则不会抛异常
class MyClass2{
static long i=0;
public static void main(String[] args) {
new MyClass2();
}
public MyClass2() {
System.out.println("...");
i++;
MyClass2 m=null;
if(i<1000)
m=new MyClass2();
}
}
分享到:
相关推荐
特别是对于初学者而言,IO 部分是容易忽略的内容,但是在项目开发中,IO 是非常基础的部分。 此外,Java 也对块传输提供支持,在核心库 java.nio 中采用的便是块 IO。块 IO 效率很高,但编程比较复杂。流 IO 的好处...
大鹏的"JAVA基础易错总结"涵盖了这些重要的知识点,并且可能还揭示了一些鲜为人知的陷阱。通过深入学习和实践,开发者可以避免这些常见错误,提升Java编程的水平。希望这份资料能成为你Java学习旅程中的宝贵财富。
以下是一些关于Java基础知识的关键点: 1. **面向对象的特征** - **抽象**:抽象是将复杂的现实问题简化为更容易理解的概念,它允许我们忽略不相关的细节,专注于核心功能。在Java中,抽象通过抽象类和接口实现,...
以上只是学习Java过程中容易被忽略的一些知识点,实际上,Java的世界远比这复杂。持续深入学习,不断实践和总结,才能真正掌握这门语言。阅读和记录读书笔记,是提高学习效率的有效方式,希望我的笔记能对你有所帮助...
2. **忽视基础知识的重要性**:很多学习者过于关注特定框架或库的使用,而忽略了基础编程知识。基础是支撑高级应用的基石,比如数据结构、算法、设计模式等。要确保在学习Java的同时,也深入理解这些基础知识,这将...
在快速入门Java的过程中,初学者很容易忽略基础知识的学习,比如环境变量的配置、基本语法、关键字和标识符命名规则等,这些都是构建Java应用程序的基石。本书的这些内容对于想要真正掌握Java的读者来说非常重要,它...
很多学习者在掌握了基础语法之后就急于学习高级特性,忽略了基础知识的重要性。实际上,扎实的基础是学习更高级知识的前提。因此,在学习新知识之前,要确保已经完全掌握了基础知识。 #### 七、忽视英语学习 最后...
对于初学者而言,IO 部分是容易忽略的内容,求职者一定要掌握该知识点。 Java 的 IO 模型设计非常优秀,它使用 Decorator 模式,用户可以动态装配不同功能的 Stream,以便获得需要的功能。例如,需要一个具有缓冲...
此外,JSP还涉及一些Java方面的知识点,例如异常处理、集合框架、多线程等,这些内容往往也会出现在面试中。 接下来,我们还需要掌握JSP页面的高效开发技巧,例如在JSP页面中合理使用MVC设计模式,将业务逻辑、数据...
嗯,这是个容易但又绝对不应该忽略的问题,你确信自己对Java感兴趣、而且又有吃苦的准备,那你才可能学好Java!如果具备这两点条件,就请继续往下看…… 2. 准备一下 请不要把你的学习Java之路和其它计算机技术分开...
Java 变量初始化是 Java 语言的基础知识点之一,但也往往被学习者所忽略。 Java 变量初始化的时机是指在 Java 语言中变量的初始化过程,包括变量的声明、初始化和赋值的步骤。 Java 变量声明 在 Java 语言中,每个...
### Java基础知识概览 #### 一、面向对象的四大特征 ...以上内容总结了Java基础知识的核心要点,对于Java初学者和开发者来说都是非常重要的知识点。掌握这些基础知识有助于更好地理解和应用Java语言。
#### 一、Java基础的常见陷阱 **1.1 不一样的数字的宽类型和窄类型** 在Java中,当我们处理不同的数值类型时,可能会遇到一些意料之外的行为。例如,当一个`byte`类型的数据与一个`int`类型的数据进行运算时,`...
### 个人笔记--JAVA基础 #### 一、初识Java **1.1. Java语言是什么** Java是一种广泛使用的高级编程语言,由Sun Microsystems于1995年发布。它被设计为简单、面向对象、分布式、解释型、健壮、安全、与体系结构...
【Java基础知识的重要性】 Java编程语言是互联网开发领域中不可或缺的一部分,尤其在企业级应用开发中占据主导地位。然而,很多开发者在追求Weblogic、Oracle、XML等先进技术的同时,容易忽视了Java基础知识的积累...
### Java面试题集基础篇知识点解析 #### 一、面向对象的特征 **1....- **定义**: 抽象是指在程序设计过程中,通过忽略对象中与当前目标无关的部分,来...对于准备Java面试的开发者来说,理解这些基础知识是非常重要的。
在Java学习的初期,掌握一些核心概念和最佳实践是至关重要的。以下将详述几个关键知识点,帮助你扎实基础,避免常见错误。 1. 面向对象的设计法则: 面向对象编程(OOP)是Java的核心。一些基本的设计法则包括: - ...
### JAVA程序员面试至尊宝典知识点总结 #### 一、面向对象的...此外,了解 Java 数据类型、异常处理机制以及 Servlet 的工作原理也是非常重要的,这些知识点不仅有助于面试准备,也是日常开发工作中不可或缺的部分。
综上所述,Java自学过程中存在多种误区,包括对编程语言的选择犹豫不决、忽视基础知识的学习、缺乏实践操作、不善于总结和反思、遇到问题容易放弃以及社交学习的重要性等。克服这些误区需要正确的方法论指导和个人的...