`

Java程序员面试题之五

阅读更多

 

26Math.round(11.5)等於多少? Math.round(-11.5)等於多少 

 

Math.round(11.5)==12

Math.round(-11.5)==-11

round方法返回与参数最接近的长整数,参数加0.5后求其floor。

 

 

27String s = new String("xyz");创建了几个String Object?

 

两个

 

一个是编译时决定的,最后放在常量池中。一个是运行时放在里面的。两个都是"xyz"。

 

常量池中只可能只有一个“xyz”,但是堆中可能有多个,

因为这里用了new String来强制在堆中再创建了一个对象,所以是两个;

如果是String s= "xyz"这样的,s这个引用就会直接指向常量池的"xyz",而不会是指向你在堆中创建的“xyz ”。

 

 

28、设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。

 

以下程序使用内部类实现线程,对j增减的时候没有考虑顺序问题。

 

 

public class ThreadTest1{

    private int j;  

    public static void main(String args[]){  
        ThreadTest1 tt = new ThreadTest1();  
        Inc inc = tt.new Inc(); 
        Dec dec = tt.new Dec(); 
         for(int i = 0;i < 2;i++){  
             Thread t = new Thread(inc); 
             t.start();  
             t = new Thread(dec); 
             t.start();  
        } 
    }   

    private synchronized void inc(){ 
        j++;  
        System.out.println(Thread.currentThread().getName()+"-inc:"+j); 
    }

    private synchronized void dec(){ 
        j--; 
        System.out.println(Thread.currentThread().getName()+"-dec:"+j);  
    }

    class Inc implements Runnable{  
        public void run(){  
            for(int i = 0;i < 100;i++){  
                inc(); 
            } 
        } 
    } 

    class Dec implements Runnable{
        public void run(){ 
            for(int i = 0;i < 100;i++){ 
                dec(); 
            } 
        }  
    } 
}

 

 

 

29Java有没有goto? 

 

java中的保留关键字,现在没有在java中使用。

 

 

 

30、启动一个线程是用run(),还是start()?

 

启动一个线程是调用start()方法,使线程所代表的虚拟处理机处于可运行状态,

这意味着它可以由JVM调度并执行。这并不意味着线程就会立即运行。

 

通过start()方法可以调用到run() 。

 

分享到:
评论

相关推荐

    java中级程序员面试题 java程序员面试题 java工程师面试题

    java中级程序员面试题 java程序员面试题 java工程师面试题

    java程序员面试题

    java程序员面试题java程序员面试题java程序员面试题java程序员面试题java程序员面试题

    JAVA程序员面试题5

    ### JAVA程序员面试题5知识点详解 #### 一、JSP和Servlet的相同点与不同点及其联系 **相同点:** - **都是基于Java的技术**:JSP和Servlet都使用Java语言编写,运行在Java虚拟机(JVM)上。 - **处理HTTP请求**:...

    Java程序员面试题集(1-50)

    以上仅是 Java 程序员面试中可能涉及的一部分知识点,实际面试中还会有更多关于设计模式、JVM 内存模型、数据库操作、网络编程等方面的问题。掌握这些基础和进阶知识对于成为一名优秀的 Java 开发者至关重要。

    java程序员早期面试题汇总.zip

    ------------------------------------- java程序员早期面试题汇总 BAT经典面试题汇总.pdf Java常考面试题.pdf java面试题(题库全)....程序员面试题精选100题.pdf ... -------------------------------------

    Java程序员面试题

    Java 程序员面试题 Java 程序员面试题包括多个方面,以下是详细的知识点解释: 1. 面向对象的特征有哪些方面? 面向对象的特征有四个方面:抽象、继承、封装、多态性。 * 抽象:抽象是忽略一个主题中与当前目标...

    Java程序员面试宝典

    《Java程序员面试宝典》附带1张DVD光盘,内容为《Java程序员面试宝典》所有面试题的多媒体教学视频(共14.5小时)及免费赠送的55小时Java教学视频和5.5小时算法教学视频。授人以鱼,不如授人以渔。《Java程序员面试...

    Java程序员面试题集

    Java程序员面试时,通常会遇到一系列关于语言特性和框架的问题,这些题目旨在考察候选人的基础知识、问题解决能力和实践经验。以下是对这些面试题目的详细解答: 1. **final, finally, finalize的区别**: - `...

    java程序员面试题150例-java常见面试题-java工程师面试题-java面试题大全

    java程序员面试题150例 java常见面试题 java工程师面试题 java面试题大全 带搜索功能,能非常方便的查找到你想要了解的 java面试题目 推荐大家下载。

    2021最新Java程序员面试题

    在当前的IT行业中,Java程序员面试已经逐步升级为考察应聘者对多个技术栈的综合理解和应用能力。以下内容根据提供的文件信息整理出的Java程序员面试知识点: 1. MyBatis框架 - MyBatis定义:MyBatis是一个支持定制...

    Java程序员面试笔试真题与解析.tar

    Java程序员面试笔试真题与解析,包含各大IT企业面试笔试的题目

    2018年java-程序员面试宝典+题库

    2018java程序员面试宝典+题库,很全。压缩的文档,打开是PDF版

    java程序员面试题集合

    ### Java程序员面试题集合知识点详解 #### 一、面向对象的四大特征 1. **抽象** 抽象是面向对象编程中的一个重要概念,它指的是在设计阶段仅考虑问题的关键部分,忽略不相关的细节。抽象可以分为两类: - **...

    2018最新最全JAVA程序员面试题

    ### 2018最新最全JAVA程序员面试题解析 #### 一、面向对象的特征有哪些方面? 面向对象编程(OOP)是Java的核心思想之一,它主要包括以下四个关键特性: 1. **抽象**:抽象是面向对象编程的一个核心概念,指的是在...

    Java程序员面试笔试宝典-何昊pdf版

    根据提供的文件信息,我们可以推断出这是一本关于Java程序员面试和笔试准备的书籍,作者为何昊。本书可能包含了大量关于Java编程语言的基础知识、高级特性以及与面试相关的技巧和策略等内容。下面将对可能涉及的重要...

Global site tag (gtag.js) - Google Analytics