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

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基础知识点总结.docx

    Java是一种广泛使用的面向对象的编程语言,其基础知识涵盖了多个方面,包括语法、面向对象特性、异常处理、多线程...以上只是Java基础知识的一个概述,每个话题都值得深入探讨和实践,不断学习和总结是提升技能的关键。

    java基础知识总结

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

    java 基础知识

    java 基础知识 java 基础知识 java 基础知识 java 基础知识

    java基础知识大全(必看经典)

    Java 基础知识大全 本资源摘要信息是 Java 基础知识大全的总结,涵盖了 Java 语言的基本概念、特点、历史发展等方面的知识点。以下是本资源摘要信息的详细内容: 一、 Java 语言的特点 * 面向对象:Java 语言是...

    java基础知识

    总结的一些java基础试题

    java基础知识总结(经典)

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

    java基础知识.md

    java的基础知识总结,对基本的知识点,容易错的知识点进行总结。文档中写有很多的案例。

    JAVA基础知识点汇总

    10、Servlet中的forward和redirect有什么区别: Forward是服务器内部的重定向,服务器直接访问目标地址的url,地址不变。 Redirect:客户端的重定向,完全跳转,地址改变。 11、JSP的内置对象: ...

    Java基础知识汇总

    jdk,eclipse使用,循环,数组,基础API,面向对象,循环,运算符,关键字,String详解,IO流

    java基础知识图

    总结了java基础的架构,从JDK安装到反射的知识

    java 基础知识总结

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

    java基础知识总结经典.pdf

    Java基础知识总结经典 本资源总结了Java基础知识,涵盖了Java概述、Java语法基础、Java开发环境配置、Java命令等多个方面。下面是该资源中所涵盖的知识点: 一、Java概述: * Java的历史:1991年,Sun公司的James...

    Java基础知识全部

    非常全的Java基础知识总结,值得下载!要想学好Java,值得一看!

    Java基础知识1,Java基础知识1

    Java基础知识1,Java基础知识1

    JAVA基础知识总结

    Java基础知识总结涵盖了Java程序设计语言的核心概念和常用知识点。在详细学习和总结这些知识点之前,首先需要对Java有一个整体的认识。Java是一种面向对象的编程语言,它具有跨平台的特性,即“一次编写,到处运行”...

    java基础知识111

    java基础知识111

Global site tag (gtag.js) - Google Analytics