面向对象(类,实例变量,方法定义,方法重载,构造方法,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 ...
随机推荐
- 如何让HTML的编写更具结构性
首先声明,我不是搞技术的,很多词汇写的不够专业,但作为一枚菜鸟,我站在菜鸟的角度,来讲述我在学习技术的过程中所遇到的问题,和解决的方案. 入门HTML还算简单,无非是先写好固定的三对开闭标签结构:ht ...
- 快速构建ASP.NET MVC Admin主页
前言 后台开发人员一般不喜欢调样式,搞半天样式出不来,还要考虑各种浏览器兼容,费心费力不讨好,还好互联网时代有大量的资源共享,避免我们从零开始,现在就来看怎么快速构建一个ASP.NET MVC后台管理 ...
- JDBC_获取数据库连接
<span style="font-size:24px;">package src.com.jdbc.java; import java.io.IOException; ...
- JavaScript时钟实例
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- 字符串-06. IP地址转换(20)
#include<iostream> #include<string> #include<cmath> using namespace std; int main( ...
- (Problem 35)Circular primes
The number, 197, is called a circular prime because all rotations of the digits: 197, 971, and 719, ...
- 让Qt支持Win7的Aero和毛玻璃效果
Qt5增加了许多特性,其中 Qt Windows Extras 模块就增加了对Win7 Aero 效果的支持. 官网的介绍如下: Qt Windows Extras provide classes a ...
- filezilla Can't open data connection.
(000003)2016/7/4 9:31:42 - (not logged in) (10.61.41.57)> Connected, sending welcome message... ( ...
- BZOJ 2440 完全平方数
2440: [中山市选2011]完全平方数 Time Limit: 10 Sec Memory Limit: 128 MB Submit: 966 Solved: 457 [Submit][Sta ...
- Air Raid(最小路径覆盖)
Air Raid Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 7511 Accepted: 4471 Descript ...