面向对象(类,实例变量,方法定义,方法重载,构造方法,this,string类)
面向对象
类是由属性和方法组成
类是所有创建对象的模板
实例变量有默认值
实例变量至少在本类范围中有效
实例变量与局部变量冲突时,局部变量优先
类中方法定义类似于函数定义
修饰符 返回值类型 方法名(参数1,参数2) 异常{
方法体
}
方法重载
参数个数不同
参数类型不同
参数类型相同但是顺序不同

传入参数的不同自动选取相应方法:典型例子system.out.println(整形,字符串等);
构造方法
1.构造方法无返回值
2.不定义的情况下,有默认的空构造方法
3.在对象构造时,被自动调用一次,而且只会被调用一次
4.用来分配空间用来初始化变量
class student{
String name = “suns”;
int age;
public Student(){}
}
this
类的实例变量与局部变量冲突的时候,局部变量优先。如果发生局部变量冲突时可以通过this.属性调用实例变量
this在这里指的是当前对象 this.i即m1的属性i
public class Test2 {
public static void main(String args[]){
MyClass m1 = new MyClass();
m1.print();
}
}
class MyClass{
int i = 10;
public void print(){
int i = 20;
System.out.println(i);//20
System.out.println(this.i);//10
}
}
String
String s = “suns”;创建一个对象//再创建String s = “suns”;时并没有创建新的对象是同一个对象
String s = new String(“suns”); 创建了两个对象
前者对象放在jvm字符串池,下次定义同样字符串时候可以不用创建,直接使用,建议采用此方式
后者不放在串池
String类中的常用方法
boolean equals()
char charAt(int pos)
int length()
String[] split();
boolean startWith(String s)
trim()
public static void main(String[] args) {
// split 分割 [1,2,3,4,5] 1,2,3,4,5
String str="1,one2,one3,one4,one5";
int[] arr=new int[5];
String[] sarr=str.split(",one");
for(int i=0;i<sarr.length;i++)
System.out.print(sarr[i]+"\t");
}
面向对象(类,实例变量,方法定义,方法重载,构造方法,this,string类)的更多相关文章
- 第7.11节 案例详解:Python类实例变量
上节老猿介绍了实例变量的访问方法,本节结合一个具体案例详细介绍实例变量访问. 本节定义一个Vehicle类(车),它有三个实例变量self.wheelcount(轮子数).self.power(动力) ...
- java 中String类的常用方法总结,带你玩转String类。
String类: String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.String类对象创建后不能修改,StringBuffer & St ...
- 关于Integer类中parseInt()和valueOf()方法的区别以及int和String类性的转换.以及String类valueOf()方法
Integer类中的. 关于parseInt()方法的API文档. 返回的是int类型的 关于valueOf()方法的API文档 返回的是Integer类型的. 关于intValue()方法的API ...
- Python全栈day24(面向对象编程作业作业_定义学校老师课程班级学生类)
面向对象作业 作业_定义学校老师课程班级学生类.py #面向对象编程作业,定义学校老师课程班级学生类 #定义几个类,尽可能定义多的数据属性及函数属性 class School: def __init_ ...
- ruby中的类实例变量和实例的实例变量
ruby中有实例变量这个语法,有点类似java的对象的属性,但是ruby中类也有实力变量, class Person @name = 'hello' def initialize(name,age) ...
- String 类的实现(3)引用计数实现String类
我们知道在C++中动态开辟空间时是用字符new和delete的.其中使用new test[N]方式开辟空间时实际上是开辟了(N*sizeof(test)+4)字节的空间.如图示其中保存N的值主要用于析 ...
- C++_类和动态内存分配2-改进后的String类
添加前面介绍过的复制构造函数和赋值运算符,使类能够正确管理类对象使用的内存. 知道对象何时被创建和释放. =================================== 修订后的默认构造函数 ...
- MR-为什么MR类的变量喜欢定义在方法外面?
写了一些MR后发现不管是别人写的还是官方给的,比如map方法,变量都是定义在方法外面. 因为之前都是照猫画虎的写的,所以自己也一直这么写,可是为什么呢? 我试了试定义在方法里面,程序照样跑,试了几个程 ...
- JAVA基础学习之路(二)方法定义,重载,递归
一,方法的定义: package test; public class test1 { public static void main(String args[]) { int result = ad ...
- Java反射特性--获取其他类实例并调用其方法
1. 代码结构 .├── com│ └── test│ └── MyTest.java└── MainCall.java 2. 代码内容 MyTest.java: package com.te ...
随机推荐
- Modular Inverse(模逆元,扩展欧几里德)
Modular Inverse Time Limit: 2 Seconds Memory Limit: 65536 KB The modular modular multiplicative ...
- CodeForces 448
A:Rewards: 题目链接:http://codeforces.com/problemset/problem/448/A 题意:Bizon有a1个一等奖奖杯,a2个二等奖奖杯,a3个三等奖奖杯,b ...
- 【解答】关于内核中没开MMU之前的虚拟地址物理地址转换问题
1. 内核没开MMU之前有虚拟地址吗?没有MMU哪来的虚拟地址? 答:有,由于载入时地址和执行时地址不同导致的没打开MMU之前也会有虚实地址问题. 2. 载入时地址和执行时地址什么差别.为什么有这样的 ...
- #, about:blank,javascript:路径比较
试了一下在<a>,<img>,<iframe>中用#,about:blank和javascript: 代码如下: <!Doctype html> < ...
- Android中的一些基础知识(二)
这几天在回顾Android的基础知识,就把一些常见的知识点整理一下,以后忘了也可以翻出来看一看. 简单介绍一下Activity的生命周期 在API文档中对生命周期回调的函数描述的很详细,这里我只是翻译 ...
- Oracle表解锁
网搜 --第一步 查看被锁表 select b.owner,b.object_name, b.object_id,l.session_id,l.locked_mode from v$locked_ob ...
- jquery 中多个存在依赖关系的ajax调用解决办法
在使用ajax异步调用的时候,可能碰到同时调用多个ajax这种情况.而且多个ajax之间还存在依赖关系.这种情况怎么处理呢? 有两种办法: 一种是多个ajax嵌套调用,这时需要设置async为fa ...
- NET Core,跨平台的轻量级RPC
NET Core,跨平台的轻量级RPC:Rabbit.Rpc 特性一览 Apache License 2.0协议开源 支持客户端负载均衡(提供了轮询.随机算法的实现) 支持ZooKeeper和文件共享 ...
- 经验总结:按需加载JS和css
项目中做过这样的事情:所有页面都通过SSI指令 include这样一份public-js.shtml, 用来引入涉及到的js(包括公共的脚本 验证插件 自定义组件等),但是一些没有交互效果的页面根本不 ...
- Card Game Cheater(贪心+二分匹配)
Card Game Cheater Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...