java基础(2)

来源:互联网 发布:ubuntu 命令行提示符 编辑:程序博客网 时间:2024/05/22 22:18

由于java对象中 还有一个是匿名对象,所以在这里我为大家介绍一下匿名对象的使用~

匿名对象:

匿名对象是对象的简化形式

匿名对象两种使用情况

当对对象方法仅进行一次调用的时

匿名对象可以作为实际参数进行传递

封装(encapsiulation)

封装:是指隐藏对象的属性和实现细节,仅对外提供公共访问方式

好处:

将变化隔离

便于使用

提高重用性

提高安全性

封装原则:

将不需要对外提供的内容都隐藏起来

吧属性都隐藏,提供公共方法对其访问

private关键字:

是一个权限修饰符

用于修饰成员(成员变量和成员函数)

被私有化的成员只在本类中有效

常用之一:

将成员变量私有化,对外提供对应的set,get方法对其进行访问。提高对数据访问的安全性

构造函数:

特点:

1.函数名与雷鸣相同

2.不用定义返回值类型

3.不可以写return语句

作用:

给对象进行初始化

注意:

1.默认构造函数的特点

2.多个构造函数是易重载的形式存在的

给大家准备了一个小练习:

this关键字

特点:this代表其所在函数所属对象的引用。

换言之:this代本类对象的引用。

什么时候使用this关键籽呢?
当在函数内需要用到调用该函数的对象时,就用this

this可以表示当前对象

htis可以访问构造方法(注意:this调用只能放在构造函数第一行)


介绍string


 String:java.lang.Object--java.lang.String

 

String str = "abc" 

等效于:

  

char data[] = {'a', 'b', 'c'}; 

String str = new String(data);

 

 

charAt 

public char charAt(int index)

 

返回指定索引处的

 char 

值。索引范围为从

 0 

 length() - 1

。序列的第一

 char 

值在索引

 0 

处,第二个在索引

 1 

处,依此类推,这类似于数组索引。

 

 

参数:

index - char 

值的索引值。

 

 

返回:此字符串指定索引处的

 char 

值。第一个

 char 

值在索引

 0 

处。

 

 

抛出:

IndexOutOfBoundsException - 

如果

 index 

参数为负或小于此字符串的

长度。

 

例子:

 

  

 String s = "Welcome to Java!"; 

  

 char a; 

  

 StringBuffer b = new StringBuffer(); 

  

 for (int i = 0; i < s.length(); i++) { 

   

 a = s.charAt(i); 

   

 b.append(a); 

  

 } 

   

 System.out.println(b); 

其中关键的是如果把得到的字符放到字符串中,要用

StringBuffer

append

char

)方法,要不然就要直接打印出来

 

  

 String s = "Welcome to Java!"; 

  

 char a; 

  

 for (int i = 0; i < s.length(); i++) { 

   

 a = s.charAt(i); 

   

 System.out.print(a); 

  

 }


  1. String实例化的两种方式
    1. String name1 = "haoren";
    2. String name2 = new String("huairen");
  2. 两种实例化的区别
    1. 第一种

String name1 = "haoren";

String name2 = "haoren";

name1name2指向了同一空间,“haoren”只存储了一次

2.第二种

String name4 = new String("haoren");

String name5 = new String("haoren");

name4name5开辟了不同的空间

3.String内容的比较(equals

<span style="white-space:pre"></span>String name = "haoren";<span style="white-space:pre"></span>//if("haoren".equals(name)){<span style="white-space:pre"></span>if(name.equals("haoren")){//(注意不能这样写,如果name=null)就会报空指针异常System.out.println("ok");<span style="white-space:pre"></span>}

  • //函数:charAt()

<span style="white-space:pre"></span>//String name = "我是好人,你是坏人!!!";//System.out.println(name.charAt(2));

  • matches()

<span style="white-space:pre"></span>if("mazheng@sina.com".matches("\\w+@\\w+[.]\\w+")){System.out.println("合法!!!");}else{System.out.println("不合法!!!");}

  • split()

  • String[] a = "我是:好人".split(":");
  • System.out.println(a[0]);

  • startsWith(String prefix)

String name ="我是好人";

System.out.println(name.startsWith(""));

  • endsWith(String suffix) 

String name ="我是好人";

System.out.println(name.endsWith(""));

字符串的内容不可改变

因此大家以后最好不要出现以下的写法(可以StringBuffer类完成)



<ul><li class="li1"><span class="s1"></span><span class="s2">trim() </span></li></ul><p class="p2"><span class="s2"><span></span>   String name ="   </span><span class="s3">我是好人   </span><span class="s2">";</span></p><p class="p2"><span class="s2"><span></span>   System.out.println(name+"!!!");</span></p><p class="p3"><span class="s2"><span></span>   System.out.println(name.trim()+"!!!");</span></p><ul><li class="li1"><span class="s4"></span><span class="s2">replace()</span></li></ul><p class="p2"><span class="s2"><span style="white-space:pre"></span>   System.out.println(name.replace("</span><span class="s3">好人</span><span class="s2">","</span><span class="s3">坏人</span><span class="s2">"));</span></p>

例子: 

 String s = "Welcome to Java!";    char a;    StringBuffer b = new StringBuffer();    for (int i = 0; i < s.length(); i++) {     a = s.charAt(i);     b.append(a);    }     System.out.println(b); 其中关键的是如果把得到的字符放到字符串中,要用StringBuffer的append(char)方法,要不然就要直接打印出来    String s = "Welcome to Java!";    char a;    for (int i = 0; i < s.length(); i++) {     a = s.charAt(i);     System.out.print(a);    } 


之前为大家准备的小练习题的答案,如果有需要的可以联系我们:

     qq群:131014179  个人邮箱:teemoe@cntv.cn

 

0 0
原创粉丝点击