zoukankan      html  css  js  c++  java
  • 使用属性升级Mybank

    一.==和equals()的区别


    1.在java当中,==比较的是内存首地址,equals比较的是两个字符串在内存中的值

    2.在C#中,==和Equals()方法的作用相同,比较两个字符串的值,因为当我们使用==的时候,在底层代码中它还是调用了Equals();

    二.访问级别

    1.public 公有的 外界任何地方都可以访问到,访问级别最高
    2.private 私有的 只能类的内部使用,其他类中访问不到 访问级别最低

    三.this关键字
    通过this可以访问当前类的所有成员变量和方法
    例如:this.name;
    this.Show();

    四.如何给私有字段赋值和取值
    private string name;
    public string GetName(){

    return this.name;
    }
    public void SetName(string name){

    this.name=name;

    }
    五.使用属性解决数据安全问题,通过公有属性访问私有字段
    private int age;
    public int Age{

    get{return this.age;}
    set{
    if(vaule<0||value>100){

    value=18;
    this.age=value;

    }else{

    this.age=value;
    }
    }
    }

    get和set都存在:读写属性
    只有get时:只读属性
    只有set时:只写属性
    属性的作用:
    控制私有字段的可访问性
    保护内部数据的安全
    类内部敏感字段使用属性来控制访问

    六.对象初始化器
    Student stu = new Student(){Name="Mike", Age=20};

    七.封装
    封装字段——将类中的字段、属性绑到一起
    将私有字段封装成公有属性
    封装是面向对象的三大特性之一(继承,多态)
    好处:
    1.隐藏了类中的内部细节
    2.避免了非法数据
    3.保证了数据的安全性和完整性
    八.值传递和引用传递
    值传递:传递的是真实的值(更改的只是值)
    引用传递:传递的事内存地址(在我们交换或者更改值的时候更改的是内存地址中的值)
    注意:
    1.如果使用引用传递的话必须要将参数初始化
    2.如果在使用引用传递的时候在方法调用时需要加上ref

    int num1 = 5;
    int num2 = 10;
    Console.WriteLine("交换之前的值:" + num1 + " " + num2);
    Swap(ref num1,ref num2);
    Console.WriteLine("交换过后的值:" + num1 + " " + num2);
    Console.ReadLine();

    public static void Swap(ref int num1, ref int num2)
    {
    int temp = 0;
    temp = num1;
    num1 = num2;
    num2 = temp;

    }

    九.形参和实参
    形参:构建方法时括号的参数叫形参,形参列表
    实参:调用方法时所传递的参数成为实参

  • 相关阅读:
    ORA01033:ORCLE initialization or shutdown in progress问题的解决
    OA、SOA和SOAP
    [导入]循环赛如何排列问题
    [导入]Free Compilers / Interpreters
    终于知道纹理的GL_MODULATE是怎么回事了
    怎么acm.tongji.edu.cn又关机了?
    [导入]一个2002罗马尼亚赛区的ACM的题目
    netcraft at tongji.edu.cn
    [导入]对编写安全的代码这个方法有用吗?
    [导入]最简单的方法输出下列图形
  • 原文地址:https://www.cnblogs.com/wangdayexinyue/p/9315908.html
Copyright © 2011-2022 走看看