`
java_hanyu
  • 浏览: 71335 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

core java学习笔记()

阅读更多

一、修饰符


修饰符       类                   属性                   方法                       局部变量

final       可以(不能被继承)   可以(不能被继承)      可以(表示不能被覆盖)     可以(常量)

static                           可以(类变量)          可以(静态方法)          

abstract    可以(抽象类)                               可以(抽象方法)

pulbic      可以                 可以                    可以

protected                        可以                    可以

default     可以                 可以                    可以

private                          可以                    可以

 

二、==与equals

基本类型进行值比较时用 ==
对象类型进行值比较时用 equals

写equals方法时:
  1、自反性判断    if(this==obj) return true;
  2、判断是否为null   if(obj==null) return false;
  3、判断类型是否兼容    if(!(obj instanceof 类)) return false;  或 if(this.getClass()!=obj.getClass()) return false;
  4、强制类型转换,判断每一个属性:简单类型用==,对象类型用.equals

toString()方法:  返回一个字符串
     直接输出一个对象时,会自动调用对象的toString()方法,输出toString()的返回值
     当没有覆盖toString()方法时,会输出 :对象名@十六进制的地址值


三、main方法的参数

 在命令模式下:java MainMethodTest abc def 100  
  
   abc是args[0],def是args[2],100是args[3]  都以字符串类型接收

 在eclipse下:run ...   先选择主类
      


四、String类详细介绍

 int a=5;
        int b=a<<33;   因为33%32=1; 所以左移1位。
 所以b=10;

 int a=3,b=4,c=5,d=0;
 if(a>b)
    if(c>d)
  d=10;
    else
  d=20;
 结果d=0;


 1、String是一个不变模式:不变模式:一个对象一旦产生就不可能再修改(string就是典型的不变模式);通过不变模式可以做到对象共享;
 
 2、如果用Stirng str = “abc”来创建一个对象时,则系统会先在串池中寻找有没有“abc”这个字符串。
  如果有则直接将对象指向串池中对应的地址,如果没有则在串池中创建一个“abc”字符串。
  所以:String str1 = “abc”;
        String str2 = “abc”;
        Str1 = = str2 返回值是ture;他们的地址是一样的。
  也就是说str1和str2都指向了代码空间中相同的一个地址,而这个地址空间保存就是是字符串”abc”;

 如果用String str = new String(“abc”)则直接在堆空间开辟一块存储空间用来存放”abc”这个字符串。
  所以:String str1 = new String(“abc”);
        String str2 = new String(“abc”);
        Str1 = = str2 返回值是false;他们的地址是不一样的。
  也就是说str1和str2分别指向了堆空间中不同的两个地址,而这两个地址空间保存的都是字符串”abc”;

 3、java.lang下的StringBuffer类。
  对于字符串连接
  String str=”1”+”2”+”3”+”4”;
  产生:
       12
       123
       1234
  会在串池中产生多余对象,而真正我们需要的只有最后一个对象,用这种方式进行字符串连接时,不管在时间上还是在空间上都会造成相当大的浪费。
   所以我们应该使用 StringBuffer(线程安全的) 或者 StringBuilder(线程不安全的)
  解决方案:
  String s;
  StringBuffer sb = new StringBuffer(“1”);
  Sb.append(“2”);
  Sb.append(“3”);
  Sb.append(“4”);
  S = sb.toString();
  解决后的方案比解决前在运行的时间上相差2个数量级。

五、包装类

 基本类型的包装类,为了提高效率
 
 JAVA为每一个简单数据类型提供了一个封装类,使每个简单数据类型可以被Object来装载。
 除了int(Integer)和char(Character),其余类型首字母大写即成封装类类型名。

 转换字符的方式:
 int I=10;
 String s=I+” ”;
 String s1=String.valueOf(i);

 Int I=10;
 Interger I_class=new integer(I);

 封装类.字符串.基本类型


 三种类型六种转换

        new Integer() 或Integer.valueOf()
 int--------------------------------------->Integer

              i.intValue()
 Integer----------------------------------->int

    Integer.toString(...) 或  String s=100+" "
 int--------------------------------------------------->String

    Integer.parseInt("...")
 String---------------------------------->int

      i.toString()
 Integer-------------------------------->String

  Integer.valueOf("...") 或new Integer("...")
 String------------------------------------------------>Integer


 需要了解的方法:
 
 Integer类中:
  int intValue()
  static int parseInt(String s)  默认为十进制
  static int parseInt(String s,int radix) 第二个参数是进制(2--36)
  String toString()
  static String toString(int i)
  static String toString(int i,int radix)
  static Integer valueOf(int i)
  static Integer valueOf(String s)
  static Integer valueOf(String s,int radix)

分享到:
评论

相关推荐

    CoreJava学习笔记

    ### CoreJava学习笔记 #### 一、JAVA特点与运行原理 **JAVA特点:** 1. **简单性**:Java的设计者们将C++语言中许多不易理解和容易混淆的部分去除,使得Java更容易理解与掌握。 2. **面向对象**:Java几乎一切都...

    corejava学习笔记

    Java是一种广泛使用的面向对象的编程语言,其基础知识构成了"Core Java"的学习内容。在学习Java时,遵循"多花时间、多动手、多问题"的原则至关重要,因为理论理解与实践操作相结合能更好地掌握知识。 1. **Java语法...

    Core Java 学习笔记

    《Core Java》学习笔记。 我把自己的笔记都以注释的形式写在代码里面了,这样方便理解。 尽管有些部分被标记为“已完成”,但实际上以后说不定我还会折返回来进行修改或者添加一些注释。 当然如果你有什么不理解...

    core java 学习笔记

    这篇学习笔记主要讨论了Java集合框架,包括Collection、List、Set和Map四大接口以及它们的相关方法。 首先,Collection是所有集合类的顶级接口,它定义了一些基本的操作,如添加元素(add)、获取元素数量(size)、...

    corejava学习笔记.doc

    Java是一种由Sun Microsystems在1995年推出的高级编程语言,现由Oracle公司维护。...以上就是Core Java学习笔记的主要内容概述,涵盖了从基础语法到高级特性的广泛知识,为深入理解和应用Java打下了坚实的基础。

    CoreJava学习笔记.doc

    《CoreJava学习笔记》 Java,作为一种广泛使用的高级编程语言,以其独特的特性和优势深受开发者喜爱。本学习笔记旨在深入浅出地介绍Java的核心概念,帮助初学者快速掌握这一强大的工具。 1. Java特点 Java语法...

    达内core_java学习笔记

    Java是世界上最流行的编程语言之一,...以上就是“达内Core Java学习笔记”中涉及的主要知识点。通过深入学习和实践,初学者可以逐步建立起坚实的Java编程基础,并为进一步学习Java的高级特性和框架打下坚实的基础。

    达内COREJAVA学习笔记.doc

    ### 达内COREJAVA学习笔记知识点详述 #### 一、Java版本与平台概述 - **J2SE**: Java Standard Edition,即Java标准版,针对桌面应用开发。 - **JAVA SE**: 指的是Java SE 5.0,发布于2004年,增加了泛型、枚举等...

    Java学习笔记及心得

    ### Java学习笔记及心得知识点详细解析 #### 标题:Java学习笔记及心得 #### 描述:Core Java 学习笔记及心得 pdf格式可打开。涵盖了java的基础入门知识,非常适合自学的及想深入学习理解的同学。 #### 标签:...

    达内java学习笔记全套

    【Java学习笔记全套】是针对Java编程语言的一套全面学习资料,涵盖了Unix操作系统基础、SQL数据库操作、核心Java编程、Hibernate持久化框架、以及Spring框架等多个关键知识点。这些笔记旨在帮助初学者系统地掌握Java...

    corejava的学习笔记

    ### CoreJava 学习笔记概览 #### 编译与运行 Java 程序 **编译命令**:`javac` - **基本语法**:`javac ***.java` - **命令行参数**: - `-g`:生成所有调试信息。 - `-g:none`:不生成任何调试信息。 - `-...

    我的二十一天CoreJava 学习笔记

    NULL 博文链接:https://thoughtfly.iteye.com/blog/1045791

    学习笔记 java\CoreJava笔记\CoreJava_day12

    在Java编程语言中,SortedSet接口是Set接口的一个子接口,它添加了对集合元素排序的能力。SortedSet接口要求其实现类必须维护元素的排序顺序,这种顺序可以是元素的自然顺序(即元素自身可比较),也可以是通过提供...

    java笔记(精华集锦)

    本压缩包中的"CoreJava学习笔记.txt"文件是Java核心概念的精华集锦,对于任何想要深入学习Java的人都是宝贵的资源。 首先,Java的基础部分包括语法、数据类型、变量、运算符以及控制流程。Java有两大类数据类型:...

    Java/JavaEE 学习笔记

    Core Java学习笔记...........31 第一章 JAVA前言..31 第二章 标识符,关键字,类型........35 第三章 表达式与流控制....................41 第四章 数组.............50 第五章 对象和类(OO思想).........53 第...

    java学习笔记(corejava)部分.rar

    这份"java学习笔记(corejava)部分.rar"文件很显然是针对Java初学者或者希望巩固基础知识的开发者准备的。下面我们将深入探讨Java Core的一些关键知识点。 1. **Java基础**:Java是一种面向对象的编程语言,其设计...

    学习笔记 java\CoreJava笔记\CoreJava_day11

    CoreJava_day11的学习笔记主要涵盖了集合框架,特别是关于List、Set和Map接口,以及ArrayList、Vector和LinkedList等具体实现类的知识点。 首先,集合框架是用来存放对象的对象,它提供了一组接口和类,使得我们...

Global site tag (gtag.js) - Google Analytics