12608人加入学习
(21人评价)
C#编程-第二季-面向对象-宇宙最简单2021最新版

制作完成于2021-10月20日 使用VS2019

价格 免费

C#的异常处理和java基本相同

 

try{

} catch (捕获的异常类型) {

 

[展开全文]

继续执行是从当前断点执行到 下一个断点。

[展开全文]

VS的debug方法与IDEA软件基本相同。

断点窗口可以禁用、删除断点。

[展开全文]

程序中的错误:  语法错误(编译错误)

语义错误(可能导致运行时异常)

语义错误也可能导致代码逻辑错误, 结果与需求不一致。

[展开全文]

练习8

a.Fun2(b);   // b.Fun1(1); 2        Fun1(5); 5 

 

 

b.Fun2(a);   // a.Fun1(1); 1        

                      Fun1(5); 5+1=6 

//用子类构造的,所以调用的是子类里的Fun1

[展开全文]
 class ClassA<T>
    {
        private T a;
        private T b;

        public ClassA(T a, T b)
        {
            this.a = a;
            this.b = b;
        }
        public T GetSum()
        {
            dynamic num1 = a;
            dynamic num2 = b;
            return (T)(num1+num2);
        }
    }
static void test02()
        {
            ClassA<int> c1 = new ClassA<int>(45,65);
            int res = c1.GetSum();
            Console.WriteLine(res);
            ClassA<string> c2 = new ClassA<string>("hello ", "world");
            string str1 = c2.GetSum();
            Console.WriteLine(str1);
        }
        
        static void Main(string[] args)
        {
            //test01();
            test02();
        }

 

[展开全文]
 class Vector3
    {
        private double x;
        private double y;
        private double z;
        public double Length()       
        {
            double res=Math.Sqrt(x * x + y * y + z * z);
            Console.WriteLine("res="+res);
            return res;
        }
        public void SetX(double temp)
        {
            if (temp<0)
            {
                return;
            }
            x = temp;
        }
        public void SetY(double temp)
        {
            if (temp < 0)
            {
                return;
            }
            y = temp;
        }
        public void SetZ(double temp)
        {
            if (temp < 0)
            {
                return;
            }
            z = temp;
        }
        public double GetX()
        {
            return x;
        }
        public double GetY()
        {
            return y;
        }
        public double GetZ()
        {
            return z;
        }
    }class Student
    {
        public string name;
        public int age;
        public string address;
        public string createTime;

        public void Show()
        {
            Console.WriteLine("名字:" + name);
            Console.WriteLine("地址:" + address);
            Console.WriteLine("年龄:" + age);
            Console.WriteLine("创建日期:" + createTime);

        }
    }
    class  Vehicle
    {
        public string brand;
        public double speed;
        public double maxSpeed;
        public double weight;
        public void Run()
        {
            Console.WriteLine("车在跑");
        }
        public void Stop()
        {
            Console.WriteLine("刹车");
        }
       
       
    }
    class Program
    {
        static void test02()
        {
            Vehicle car1 = new Vehicle();
            car1.Run();
            car1.Stop();
            Vector3 v1 = new Vector3();
            //v1.SetX(5.6);
            v1.SetY(4.5);
            v1.SetZ(8.45);
            //Console.WriteLine(v1.GetX());
            v1.SetX(-5);//默认是0,没有改变成负数
            Console.WriteLine(v1.GetX());
            Console.WriteLine(v1.Length());
        }
        static void test01()
        {
            Student stu1 = new Student();//声明对象+实例化对象
            Student stu2;//声明对象
            stu1.name = "李四";
            stu1.address = "山西";
            stu1.age = 18;
            stu1.createTime = "11月23日";
            stu1.Show();
            stu2 = new Student();//实例化对象
            
        }
        static void Main(string[] args)
        {
            //test01();
            test02();
        }
    }

 

[展开全文]


//定义类的泛型

class Studen  <T>{

}

<T>   ->    type  //可以指定某一类型

 

//定义方法泛型

public static T GetSum<T>(T a,T b){
dynamic num1 = a;

dynamic num2 = b;
return (T) (num1 +num2);
 

 

[展开全文]

list. Remove( )  //删除,通过指定某一个元素进行删除 
list. RemoveAt( )  //根据指定的索引进行移除 

 

Sort ( )  //数值排序 ,升序。

[展开全文]


List<int> list = new List<int>();


Console.WriteLine(list.count+" : "+ list.Capacity);

 

list.count    代表列表的个数

list.Capacity    表示列表的容量

[展开全文]

集合(列表 list)

1,泛型 

List<int> list = new List<int>();
 

[展开全文]

子类开始继承

如果没有写Overide关键字,则方法为隐藏方法

[展开全文]

1,接口没有返回值,。

2,接口与抽象类的区别

接口:只能包含抽象方法(只有方法的声明,没有方法体)

抽象类:可以包含抽象方法,也可以包含普通方法

3,

 

 

[展开全文]

   // public override void Exam()    重写父类(基类)的方法
        //public new void Exam()   new 关键字可以显式隐藏从(父类)基类继承的成员。

[展开全文]

索引关键字   this

 

public string this[int index]{
get{
return name [index];
}
set{
name[index] = value;
}
}
 

[展开全文]

授课教师

问问题加入A计划,有专门负责答疑的老师哦!!!

课程特色

下载资料(1)
视频(60)