반응형
깃 서버에서 나의 컴퓨터로 정보를 가져오는 것을 클론(CLONE)이라고 한다.
깃에서 가져온 클론을 내 컴퓨터에서 허용 해주는 것을 커밋!(COMMIT)!
깃 서버와 나의 컴퓨터가 같이 움직일 수 있도록 하는 것이 푸시 (PUSH) -변경되는 것을 깃 서버에 업로드하는 것
다른 사람이 작업을 해서 깃서버에 올리고 그것이 나의 컴퓨터와 동기화 되는 것을 풀(PULL)
제네릭이란? 변수의 형을 매개변수로 하여 클래스나 메소드의 알고리즘을 자료형과 무관하게 기술하는 기법
형 매개변수(type parameter) 클래스 내의 필드나 메소드 선언시 자료형으로 사용 '<'과 '>' 사이에 형 매개변수의 이름을 기술 : <T1, T2, T3, ..., Tn>
alt +enter 생성자 생성 자동으로 매개변수로 생성가능
fore +tab +tab 하면 자동으로 형식이 완성됨
제네릭 사용하는 방법 다시 공부하기
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace GenericApp
{ public class SimpleGeneric<T>
{
private T[] values;
private int index;
public SimpleGeneric(int len)
{
values = new T[len];
index = 0;
}
public void Add(params T[] args)
{
foreach (T item in args)
{
values[index++] = item;
}
}
public void print()
{
foreach (T item in values)
{
Console.Write(item + ",");
}
Console.WriteLine();
}
}
class Program
{
static void Main(string[] args)
{
SimpleGeneric<Int32> gintegers = new SimpleGeneric<int>(10);
SimpleGeneric<double> gDoubles = new SimpleGeneric<double>(10);
gintegers.Add(1, 2);
gintegers.Add(1, 2, 3, 4, 5, 6, 7);
gintegers.Add(10);
gDoubles.Add(10.0, 12.4, 37.5);
gintegers.print();
gDoubles.print();
}
}
namespace exceptionTestapp1
{
class Program
{
static void Main(string[] args)
{
int x= 10, y=5, value=0; //선언이라 에러날 일없는부분
// 최근에 나온 문자열 방식 더 쉽다 .
//예외처리//
//비정상적으로 종료 될 거 같은 위치에 try구문으로 //
//일단 throw 로 던지는 걸 catch로 받기
//try 예외 검사 catch 예외처리 finally 마무리
try
{
value = x / y;
Console.WriteLine($"{x}/{y}={value}");//에러 날만한 부분을 트라이에 적었다.
throw new Exception("사용자 에러"); // 사용자가 일부러 에러내는 코드 exception을 분리해야한다.
}
catch(DivideByZeroException ex)
{
Console.WriteLine("2.y의 값을 0보다 크게 입력하세요");
}
catch (Exception ex)
{
Console.WriteLine("3."+ex.Message); //에러가 날경우에 명령어
}
finally
{
Console.WriteLine("4.프로그램이 종료했습니다.");//에러가 나든 안나든 마지막에 이루어질 출력문 (무조건실행)
}
}
}
}
윈도우 폼
단순히 폼이라고 부름
운영체제에서 제공하는 기본적인 화면 단위인 창을 말하는 개념
폼클래스
윈도우 폼을 나타내는 클래스
콤포넌트 클래스
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace ClockApp
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void timer1_Tick(object sender, EventArgs e)
{
DateTime now = DateTime.Now;
label1.Text = now.ToString("HH:mm:ss");
}
}
}
더블 클릭으로 코드 창으로 이동
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace ClockApp
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void timer1_Tick(object sender, EventArgs e)
{
DateTime now = DateTime.Now;
label1.Text = now.ToString("HH:mm:ss");
}
private void Form1_Load(object sender, EventArgs e)
{
MessageBox.Show("Form 로드시 발생");
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
MessageBox.Show("Form 클로즈시 발생");
}
private void Form1_Activated(object sender, EventArgs e)
{
MessageBox.Show("Form 활성화시 발생");
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace ClockApp
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void timer1_Tick(object sender, EventArgs e)
{
DateTime now = DateTime.Now;
label1.Text = now.ToString("HH:mm:ss");
}
private void Form1_Load(object sender, EventArgs e)
{
MessageBox.Show("Form 로드시 발생");
}
private void Form1_FormClosing_1(object sender, FormClosingEventArgs e)
{
if (MessageBox.Show("진짜 닫을래?", "경고", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes)
{
e.Cancel = false; //취소를 안시켜서 종료
}
else
{
e.Cancel = true; // 취소시키니까 종료 안됨
}
}
}
}
버튼 동일한거 생성원하면 컨트롤 누르고 드레그하면 동일한 버튼이 생성가능
못해먹겠네
반응형
'C#' 카테고리의 다른 글
C# - 소수인지 아닌지 판별하는 알고리즘! (0) | 2023.02.23 |
---|---|
C# Winform 개발(자동 전산 파일 삭제 프로그램 ) (0) | 2023.02.23 |
C# 문법- INDEXER (FEAT PROPERTY) (0) | 2023.02.21 |
C# - 프로퍼티 문법/상속 복습(0603) (1) | 2023.02.21 |
C#- Main메서드 (2) | 2023.02.21 |
C# -STACK, HEAP/ARRAY.CLEAR/ (0) | 2023.02.21 |