IT第九天 - 包、访问修饰符、变量的内存分配、String类中常用方法
|
IT第九天 |
||
|
上午 |
包 |
1.包的命名规则:域名.项目名称.模块名 2.如:Wfei.com.windows.login |
|
访问限制符 |
1.四种访问限制符分别对应为: (1)default:默认的,默认为protect (2)public:公共的引用了本类的都可以访问的 (3)protect:在同一个包中的可以访问 (4)private:只能在当前类中才可以访问 |
|
|
方法优化 |
1.逻辑思维:猜拳游戏的设定 |
|
|
下午 |
内存分配 |
1.在8种数据类型中,除了String型是类外,其他7种数据类型,均是结构体,结构体数据类型的值是可变的,而String型的值是不可变的(在此,理解为:不可变,即它的值是只能更换指向常量池中其他的值,如果没有则创建,而不能在原来指向的那个值上更改这个值为需要的值) 2.内存分配问题: (1)结构体变量:为变量开辟的内存地址1 + 值所在常量池的地址2;1指向2 (2)类\实例变量:为变量开辟的内存地址1 + 为实例开辟的内存地址2 + 实例化的值所在常量池的地址3;1指向2,2引用3 3.String类型值在使用“==”比较时:比较的是变量所指向的内存地址,如果变量时类\实例变量,则比较的是为实例开辟的内存地址,不是实例所引用的常量池中的地址 |
|
String |
1.常用方法: (1)equals()比较的原理:取出字符串中的每个字符进行比较,因此在比较过程中会产生多个“临时”字符串,如:hello会产生h/e/l/l/o/hell/hel/he (2)str.toUpperCase()、str.toLowerCase():转换字符串的大小写 (2)str1.equalsIgnoreCase(str2):比较两个字符串,并忽略大小写 (3)str.replace(‘a’,’b’)、str.replace(“a”,”b”):将str中所有为a的字符替换成b (4)str.replaceAll(“a”,”b”):将str中所有为a的字符替换成b,该方法中的a还可以是【正则表达式】,在以后的编程中,替换字符多会用到该方法 (5)其他:indexOf(String) + indexOf(string,int、lastIndexOf(String)、charAt(int)、substring(int) + substring(int,int) |
|
|
String中常用方法原理模拟 |
1.indexOf() 2.charAt()应用 3.trim()方法截取掉字符串首尾的空格 |
|
|
晚上 |
String方法深入 |
1.未完成 |
|
问题 |
1.String类型的值是不可变的,如何理解 2.String类型的值,使用”==”比较的工作原理理解 |
|
|
笔记 |
1.包的命名规则:Wfei.com.windows.login 2.protect:在同一个包中能访问,private:在当前类能被访问,默认的情况是protect 3.在8种数据类型中,除了String是类外,其他的都是结构体 4.内存的分配: (1)变量:变量的地址 + 值在常量池的地址 (2)实例:变量的地址 + 实例所在地址 + 值在常量池的地址 5.String中常用的方法:toUpperCase()、toLowerCase()、equalsIgnoreCase()、repalce()、replaceAll()、indexOf()、lastIndexOf()、charAt()、substring() 6.String类型值时不可变的:原因是String的值是指向值的,不是本身,当改变String值时是将其指向其他的值,而不是在原来的值上修改值 7.String在使用“==”进行比较时,其真实比较的是地址,“abc” != new String(“abc”) |
|
IT第九天 - 包、访问修饰符、变量的内存分配、String类中常用方法的更多相关文章
- java的访问控制(包、访问修饰符、修饰符)
一. java的类包 编写好一个源程序后,首先要执行javac命令进行编译源文件,并生成与源文件同名后缀为“.class”的字节码文件(类文件),该类文件与源文件默认在同一个目录中.该类文件是 ...
- Java中各种(类、方法、属性)访问修饰符与修饰符的说明
类: 访问修饰符 修饰符 class 类名称 extends 父类名称 implement 接口名称 (访问修饰符与修饰符的位置可以互换) 访问修饰符 名称 说明 备注 public 可以被本项目的所 ...
- Java中各种修饰符与访问修饰符
Java中各种修饰符与访问修饰符 类: 访问修饰符 修饰符 class 类名称 extends 父类名称 implement 接口名称 (访问修饰符与修饰符的位置可以互换) 访问修饰符 名称 说明 备 ...
- 【译文】 C#面向对象的基本概念 (Basic C# OOP Concept) 第一部分(类,对象,变量,方法,访问修饰符)
译文出处:http://www.codeproject.com/Articles/838365/Basic-Csharp-OOP-Concept 相关文档:http://files.cnblogs.c ...
- java 访问修饰符
此题考察修饰符,函数定义等,故从网上搜罗了下相关资料,总结如下: 类.方法.成员变量和局部变量的可用修饰符 修饰符 类 成员访求 构造方法 成员变量 局部变量 abstract(抽象的) √ √ - ...
- 1.7Oob封装 继承 访问修饰符 静态和构造方法的执行顺序
1:访问修饰符 private 同类中 默认 同类 同包 protect 同类 同包 子类 public 同类 ...
- C#和JAVA 访问修饰符
JAVA ----------------------------------------------- 访问修饰符 描述 ------------------------------- ...
- Java访问修饰符(转)
类.方法.成员变量和局部变量的可用修饰符 修饰符 类 成员方法 构造方法 成员变量 局部变量 abstract(抽象的) √ √ - - - static (静态的) - √ - √ - public ...
- Java的访问修饰符的作用范围
访问修饰符: private default protected public 作用范围: 访问修饰符\作用范围 所在类 同一包内其他类 其他包内子类 其他包内非子类 private 可以访问 不可以 ...
随机推荐
- 基于thinkphp的uploadify上传图功能
php Action server端 <?php /* * To change this template, choose Tools | Templates * and open the ...
- 延迟N秒执行某个方法
[self performSelector:<#(nonnull SEL)#> withObject:<#(nullable id)#> afterDelay:<#(NS ...
- 浅谈Servlet(二)
1.forward(请求的转发)和redirect(重定向) 目的:都是为了把一个Servlet的功能,拆分到多个Servlet中,便于后续代码的维护. a.forward(请求转发) (1).如何在 ...
- C++中引用
在C语言中&这个符号表示了取地址符,但是在C++中它却有着不同的用途,掌握C++的&符号,是提高代码执行效率和增强代码质量的一个很好的办法.一.引用简介 引用就是某一变量(目标)的一个 ...
- JavaSE_ API常用对象 总目录(11~14)
JavaSE学习总结第11天_开发工具 & API常用对象111.01 常见开发工具介绍11.02 Eclipse和MyEclipse的概述11.03 Eclipse的下载安装及卸载11.04 ...
- centos7 ops
默认使用firewall防火墙,不在使用iptables 特点:可以动态加载新设置的规则,而不用重启服务 scp操作: scp localfile user@host:remotedir mysql. ...
- hive 分区操作记录
创建分区: alter table table_name add partition (dt='20150423') location '/data/text/20150423';
- javascript函数querySelector
querySelector用于获得dom节点,可以接受三种类型的参数:id(#),class(.),标签.很像jquery的选择器.不过只能返回一个子孙元素,但是jquery选择器的话,可以返回一组元 ...
- 关于yield创建协程的理解
先上利于理解的代码: #coding:utf-8 def consumer(): c_r = '' while 1: m = yield c_r if not m: return print(&quo ...
- [LeetCode]题解(python):067-Add Binary
题目来源: https://leetcode.com/problems/add-binary/ 题意分析: 这题是要将二进制相加,比如“11”,“1”,那么就返回“100”. 题目思路: 模拟加法的过 ...