`
wdt1988520
  • 浏览: 15603 次
社区版块
存档分类
最新评论

Java基础知识

阅读更多

Sun 公司对 Java 编程语言的解释是:Java 编程语言是个简单面向对象分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言

 

java的可移植性表现:1、java中基本类型的大小是固定的,不会随着系统的变更而改变(比如C/C++的int可                                              能是16位,可能是32位),而java int固定32位。

                                     2、二进制数据以固定的格式进行的存储和传输,这样消除了字节顺序的困扰。

                                     3、字符串是用标准的UNICODE格式存储。

 

java是解释型语言:   java解释器可以在任何一个移植了解释器的机器上执行java字节码,java有一个即时编                                       译器可以在程序运行时刻将常用字节码快速的翻译了机器码。

 

简单谈谈Java的一些小点:

  

java中的浮点值类型:如2.0-1.1=0.8999999999999999,而不是想象中的0.9,其主要原因是浮点数值采用二进制系统表示,而二进制系统中无法精确表示分数1/10,这就好像十进制中无法表示1/3一样.所要在精确计算     中采BigDecimal.

 

java中字符串的比较:java中字符串的比较用equals而不用==的原因,==比较的类型存放的地址,而字符串的比较是比较的内容。例如:

    String greeting="Hello";

    if(greeting=="Hello")/可能返回true;

    if(greeting.substring(0,3)=="Hel")//可能返回的false,因为这截取的字符串可能被拷贝放在不同的位置。

 

java中基本类型的比较:用==因为java同样的 int a=1;int b=1;int c=1;过程是现在内存地址中创建1,然后a指向1的地址,b搜索内存中是否有1,有则b指向1的地址,c则同理.

 

 

java的参数传递:java中只有值传递,没有引用传递。

    例如:public void add(int x){

                   x=x+5;

                }

      

              int a=10;

              add(a);

 

      这里打印a始终为10,不是15.因为传递的是值不是引用。

      具体执行步骤:

         1、x是a的一个拷贝,在执行加法后x为15,在方法结束后x就不在使用。

 

 

     为什么大家总认为java中存在引用传递,可能被像下面的例子误导:

      

      //给员工加工资

      pubic  void  add(Employee em){

         em.raiseMoney(200);

      }

    

      Employee jack=new Employee(100);

    

      add(jack);

 

     这里的具体执行:1、em引用的jack的一个拷贝,em和jack同时引用了一个对象,em对该对象加了工资,但方法结束em消失,但em引用的对象去增加了工资。

 

 

     下面举一个反例:

     

      //交换对象

      public void change(Employee x,Employee y){

          Employee temp = x;

          x=y;

          y=temp;

      }

      

      Employee jack=new Employee();

      Employee rose=new Employee();

 

      change(jack,rose);

 

 

      这里事实上是不能将jack和rose交换的,这里的具体执行是:x,y分别是jack和rose的一个拷贝(可以把这个拷贝看成是值,不是引用),x,y实现了交换,但方法结束想x,y消失,而jack和rose的引用并没有交换。

分享到:
评论

相关推荐

    java基础知识 ppt

    java基础知识,帮助初学者更快更好地掌握java。ppt内容具体易懂,希望对刚接触java的初学者有所帮助。

    java基础知识的培训ppt

    java基础知识的培训ppt,对于java初学者来说可以有一些作用。

    java基础知识总结

    Java 基础知识总结 Java 是一种广泛使用的编程语言,由 Sun 公司的 James Gosling 等人于 1991 年开始开发。Java 有三种技术架构:JavaEE、JavaSE 和 JavaME。JavaSE 是桌面应用程序的开发基础,JavaEE 是企业环境...

    java基础知识总结(经典)

    Java 基础知识总结是 Java 程序员不可或缺的一部分,本总结将涵盖 Java 的基础知识,包括 Java 概述、Java 语法基础、变量、数据类型、运算符、控制语句、方法、数组、继承、多态、接口、异常、IO 流等。 一、Java ...

    第一讲 Java基础知识.ppt

    【Java基础知识概述】 Java是一种广泛使用的高级编程语言,由Sun Microsystems公司(现已被Oracle公司收购)于1991年发起的“绿色项目”孕育而生,最初名为Oak。尽管最初的项目目标并未实现,但Java作为一种面向...

    Java基础知识总结 (绝对经典)

    ### Java基础知识总结(绝对经典) #### 一、Java概述 - **起源与发展**:Java语言始于1991年Sun公司的James Gosling等人所开发的Oak语言,原计划用于控制嵌入式设备如有线电视交换盒和个人数字助理(PDA)。1994年...

    java八股文,Java基础知识面试题,md文档

    java八股文,Java基础知识面试题,md文档

    java基础知识点总结及面试问题

    java基础知识点总结及面试问题java基础知识点总结及面试问题java基础知识点总结及面试java基础知识点总结及面试问题

    Java基础知识学习:包括JVM虚拟机、对象模型等Java基础知识代码案例.zip

    Java基础知识学习:包括JVM虚拟机、对象模型等Java基础知识代码案例Java基础知识学习:包括JVM虚拟机、对象模型等Java基础知识代码案例Java基础知识学习:包括JVM虚拟机、对象模型等Java基础知识代码案例Java基础...

    java基础知识点总结

    java基础知识点,面试宝典,最适合你的java面试知识点,所学java知识点总结

    Java基础知识点和答案

    Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案...

    java基础知识培训课件.ppt

    java基础知识培训课件

    java 基础知识总结

    自己在网上找的相对好一点的java复习资料,留个纪念 。详细讲述了Java课程的知识点

    java基础知识思维导图

    对java基础知识的总结;包括面向对象特性,java基础,数据类型,泛型,正则等。

    学习Spring必学的Java基础知识(含数据库事务基础知识)

    学习Spring必学的Java基础知识(含数据库事务基础知识)

    Java基础知识(笔试面试必备)

    Java基础知识(笔试面试必备) 包括如何跳出当前的多重嵌套循环、设计一个一百亿的计算器、"=="和equals方法究竟有什么区别、静态变量和实例变量的区别、abstract class和interface有什么区别等等 备注:里面的序号...

    java基础知识

    java基础知识测试,只要一分钱就可以,主要是对基础的巩固

    JAVA基础知识巩固系列(PDF文档)

    JAVA基础知识巩固(Java SE 第一讲(Java SE入门、JDK的下载与安装、第一个Java程序、Java程序的编译与执行)~~~~~~~~~~Java SE 第十一讲(面向对象之封装) 续二)

Global site tag (gtag.js) - Google Analytics