Penggolongan dari jumlah peserta yang ikut dalam perjanjian dapat dibedakan antara treaty bilateral dan treaty multilateral. Treaty bilateral adalah perjanjian yang diadakan oleh dua negara untuk mengatur kedua belah pihak, misalnya perjanjian perpajakan antara Indonesia dengan Jepang, perjanjian dwi kewarganegaraan antara Indonesia dengan China. Sedangkan treaty multilateral adalah perjanjian yang diadakan oleh banyak negara dan sebagian di bawah pengawasan organisasi internasional seperti PBB, ILO, WHO, IMF, World Bank, dan lain-lain. (Edy Suryono, 1988).
Dari perjanjian internasional yang bersifat bilateral maupun multilateral, masing-masing dapat mempunyai objek sendiri-sendiri dimana objek tersebut dapat diperjanjikan dalam bentuk bilateral maupun multilateral. Objek perjanjian itu wujudnya apa dan bagaimana, hal itu sangat tergantung pada para pihak yang membuat perjanjian. Ia dapat berupa perjanjian di bidang politik, ekonomi, perbankan, keuangan, pertahanan, perpajakan dan atau bidang lainnya.
Penggolongan yang lebih penting dari hukum internasional adalah penggolongan dari strukturnya sebagai hukum formil, yaitu penggolongan dalam treaty contract (treite-contract) dan law making treaties (treite lois). Treaty contract adalah suatu perjanjian yang dimaksudkan seperti suatu kontrak atau perjanjian dalam hukum perdata hanya mengakibatkan hak-hak dan kewajiban antara pihak-pihak yang mengadakan perjanjian itu. Contoh dari treaty contract adalah perjanjian dwi kewarganegaraan, perjanjian perbatasan, perjanjian perdagangan, perjanjian perpajakan.
Namun demikian yang perlu diperhatikan adalah bahwa treaty contract bukan merupakan sumber langsung hukum internasional, tetapi ia merupakan hukum khusus bagi para peserta yang menandatanganinya. Oleh karena itu dalam Pasal 38 ayat (1a) Statuta Mahkamah Internasional digunakan perkataan konvensi khusus (particular convention). Traktat seperti ini juga dapat membentuk hukum melalui penerapan asas-asas yang mengatur perkembangan hukum kebiasaan. (JG Starke, 1991)
Sementara itu, law making treaties adalah suatu perjanjian yang dimaksudkan sebagai perjanjian yang meletakkan ketentuan-ketentuan atau kaedah-kaedah hukum bagi masyarakat internasional secara keseluruhan. Contoh perjanjian ini antara lain: Konvensi Vienna 1961 tentang Hubungan Diplomatik, Konvensi 1949 tentang Perlindungan Korban Perang, Konvensi Vienna 1969 tentang Hukum Traktat, dan lain-lain.
Perbedaan antara treaty contract (treite-contract) dan law making treaties (treite lois) jelas nampak bila dilihat dari pihak-pihak yang tidak turut serta pada perundingan-perundingan yang melahirkan perjanjian. Pihak ketiga pada umumnya tidak dapat turut serta dalam treaty contract yang diadakan antara para pihak yang mengadakan perjanjian itu semula. Perjanjian itu hanya mengatur persoalan yang semata-semata mengenai kedua pihak yang mengadakan perjanjian itu.
Suatu perjanjian yang dinamakan law making treaties selalu terbuka bagi pihak lain yang sebelumnya tidak turut serta dalam perjanjian karena yang diatur dalam perjanjian itu merupakan masalah-masalah umum yang mengenai semua anggota masyarakat internasional. Misalnya negara-negara seperti Ghana, Guinea, Tanzania, Bangladesh, Brunai Darussalam dapat turut serta dalam Konvensi Jenewa 1949 tentang Perlindungan Korban Perang walaupun negara-negara itu tidak turut serta dalam konferensi Jenewa 1949, bahkan negara-negara itu pada waktu itu belum ada.
Apabila ditinjau dari aspek juridis, maka menurut bentuknya setiap perjanjian treaty contract (treite-contract) maupun law making treaties (treite lois) adalah suatu contract, yaitu suatu perjanjian atau persetujuan antara pihak-pihak yang mengadakannya dan yang mengakibatkan timbulnya hak-hak dan kewajiban bagi pesertanya. Dan apabila dilihat dari fungsinya, keduanya adalah law making, artinya menimbulkan hukum. (Mochtar Kusumaatmadja, 1976).
Hal yang tidak kalah penting dari penggolongan perjanjian internasional adalah apabila dipandang dari sudut berlakunya. Berlakunya treaty dapat dibagi atas self executing treaty dan non self executing treaty. Jika perjanjian internasional itu berlaku setelah diratifikasi yang berwenang, maka hal itu dinamakan self executing treaty. Sementara itu apabila perjanjian berlaku sesudah ada perundang-undangan atau legislasi maka disebut non self executing treaty.
Dari semua hal yang menyangkut perjanjian internasional sebagaimana diuraikan di atas dengan nama dan apapun istilahnya, maka ia akan melahirkan kewajiban-kewajiban yang mengikat bagi negara-negara peserta (para pihak). Kekuatan mengikat tersebut terletak pada suatu adagium hukum internasional yang sangat terkenal, yaitu: “pacta sunt servanda”, yang artinya negara-negara harus melaksanakan dengan itikad baik kewajiban-kewajibannya yang telah disepakati.
HUKUM NASIONAL Vs HUKUM INTERNASIONAL