为什么一个类的全局变量默认以m开头?

某天闲着无聊,突然想起来为什么大家都习惯将全局变量使用m开头,于是追根求源,查了一些资料,虽然并不是我想要的,但是也总结一下。

在stackoverflow上就有人问:

Why do most variables in Android tutorial start with ‘m‘?

下面就有人回答是在Android源码网站里有对编码规范的描述,其中就有:

Follow Field Naming Conventions

non-public, no-static field names start with m.

static field names start with s.

other fields start with a lower case letter.

public static final fields (constants) are ALL_CAPS_WITH_UNDERSCORES.

网址:source.android.com/source/code-style.html

时间: 2024-12-11 02:54:20

为什么一个类的全局变量默认以m开头?的相关文章

OneExerciseOne创建一个类,它包含一个int域,一个char域,他们都没有初始化,验证Java执行了默认初始化

在学习<Thinking In java>时,遇到Chapter 2的Exercise 1,问题是这么说的"/**创建一个类,它包含一个int域,一个char域,他们都没有初始化,将他们的值打印出来,验证Java执行了默认初始化".刚拿到这道题目我是这么写的. 1. package Two; public class ExerciseOne {public static void main(String [] args){int a;char c;System.out.pr

面向对象定义一个类

1定义一个类格式:public class 类名{类体},能编译不能运行类名首字母必须大写,以后每个单词首字母大写2定义属性和声明变量一样格式:属性类型 属性名;,属性名首字母小写以后每个单词首字母大写属性类型可以是任意类型(基本数据类型和引用数据类型,比如String)3.定义方法格式 public void 方法名(参数){语句(方法体)}方法名首字母小写以后每个单词首字母大写 注意事项:类里只能有属性和方法(方法块,代码块),语句必须写到方法里 4.定义对象:类名 对象名 = new 类名

VC的若干实用小技巧 (如何干净的删除一个类)

Visual C++6.0(5.0)开发工具功能非常强大,但是对于初学者来说,却有很多细节的问题需要注意.作者搜集整理了以下一些实用小技巧,希望对初学者有所帮助. 1:使用vc开发项目时,常会遇到这种情况:      即明明只改动了一个文件,却要把整个项目全部重新编译连接一次.刚刚连接好,一运行,又提示重新编译连接一次,非常讨厌.这是因为出现了未来文件的缘故.      解决方法:      找出对应文件夹下的debug目录,将未来文件全部delete, 再rebuild all一次.(未来 文

Android中用Application类实现全局变量

最近在项目中,遇到了application这个类,开始不知道有什么用,经过学习后才知道它的用途也蛮大的,举个例子,如果想在整个应用中使用全局变量,在java中一般是使用静态变量,public类型:而在android中如果使用这样的全局变量就不符合Android的框架架构,但是可以使用一种更优雅的方式就是使用Application context. 我们先看看一下这段说明: Base class for those who need to maintain global application s

OC -- 第一个类

类名:Car 属性:轮胎个数.时速 行为:跑 完整写一个类:类的声明和实现 1.    类的声明 代码: // NSObject 再Foundation框架中 #import <Foundation/Foundation.h> // NSObject 基类 @interface Car : NSObject { // 声明对象属性(成员变量,默认会初始化为0) @public int  wheels;  // 轮胎个数 int  speed;  //  时速 } // 方法(行为) // 只要

利用反射获取一个类实例的所有属性名称和值 拼接为字符串

需要一个功能:获取一个类实例的所有属性名称和值并拼接为字符串,然后进行处理.代码保存在此以备后用. 建立一个类文件ClassToString.cs 以下代码可以直接使用,参数为一个类的实例,返回的是一个数组,[0]为属性名的拼接,[1]为属性Value的拼接. 对于类的属性类型没有限制,但是如果没有全部赋值的话,Value会范围默认值, 比如int为0,String为空,DateTime为0001/1/1 0:00:00,0,0,0 需要有需要的话可以在拼接的时候判断进行相应处理 ClassTo

【C/C++学院】0817-递归汉诺塔 双层递归 /CPP结构体 /面向过程与面向对象的编程模式/类的常识共用体实现一个类的特征/QT应用于类以及类的常识

递归汉诺塔 双层递归 #include <iostream> void han(int n, char A, char B, char C) { static int num = 1; std::cout << "第" << num << "次"; num++; if (n<1) { return; } else { han(n - 1, A, C, B); std::cout << A <&l

一天一个类,一点也不累 之 Vector

一天一个类,一点也不累. 今天要说的是ArrayList的亲兄弟--Vector 亲兄弟?看看“族谱” Class Vector<E> java.lang.Object java.util.AbstractCollection<E> java.util.AbstractList<E> java.util.Vector<E> All Implemented Interfaces: Serializable, Cloneable, Iterable<E&g

Java反射机制demo(五)—获得并调用一个类中的方法

这个demo在使用反射机制操作属性之前,主要原因是因为在.class文件字节码中,方法排在属性的前面. 1,获得一个类中的方法 先看一下方法和运行结果.获取所有的方法使用Class类中getMethos()方法. 待获取的类: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 package